iB-theme


IBM-inspired code editor and terminal theme for Cursor IDE, GNU Emacs, VIM, Neovim, CotEditor, macOS Terminal, and iTerm2.
Overview
iB-theme is a professional color scheme based on IBM's Carbon Design System, providing both dark and light variants optimized for coding productivity and visual comfort. Designed with enterprise development environments in mind, it offers exceptional readability and a modern aesthetic.
Features
- IBM Carbon Design System inspired color palette
- Dark and Light variants for different preferences and lighting conditions
- Optimized for readability with high contrast and carefully selected colors
- Multi-editor and terminal support - Works with Cursor IDE, GNU Emacs, VIM, Neovim, CotEditor, macOS Terminal, and iTerm2
- Professional appearance suitable for enterprise development environments
- Accessibility focused with WCAG compliant color contrasts
- Performance optimized for smooth editing experience
Installation
Method 1: VS Code Marketplace
# Install from the Marketplace (VS Code)
code --install-extension jpfchang.ib-theme
Method 2: Open VSX Registry
# Install from Open VSX (for VSCodium and other alternatives)
codium --install-extension jpfchang.ib-theme
# If using VS Code with the Open VSX extension bridge, you can also run:
code --install-extension jpfchang.ib-theme
Method 3: Manual Installation
Cursor IDE / VS Code
Download the latest release:
# Clone the repository
git clone https://github.com/JohnThre/iB-theme.git
cd iB-theme
Install using the provided script:
chmod +x install.sh
./install.sh
Or install manually:
- Copy the theme folder to your extensions directory:
- macOS:
~/.vscode/extensions/ or ~/.cursor/extensions/
- Windows:
%USERPROFILE%\.vscode\extensions\ or %USERPROFILE%\.cursor\extensions\
- Linux:
~/.vscode/extensions/ or ~/.cursor/extensions/
Activate the theme:
- Restart your editor
- Go to
File > Preferences > Color Theme (or Cmd/Ctrl + K, Cmd/Ctrl + T)
- Select "iB-theme Dark" or "iB-theme Light"
GNU Emacs
GNU ELPA (Recommended):
;; Coming soon to GNU ELPA!
;; Once available, install via:
M-x package-install RET ib-theme RET
;; Then load a theme:
(load-theme 'ib-theme-dark t)
;; or
(load-theme 'ib-theme-light t)
Automatic Installation (Current):
cd emacs
./install-emacs.sh
Manual Installation:
# Copy theme files
mkdir -p ~/.emacs.d/themes
cp emacs/ib-theme-*-theme.el ~/.emacs.d/themes/
# Add to your init.el
echo "(add-to-list 'custom-theme-load-path \"~/.emacs.d/themes\")" >> ~/.emacs.d/init.el
echo "(load-theme 'ib-theme-dark t) ; or 'ib-theme-light" >> ~/.emacs.d/init.el
Interactive Loading:
M-x load-theme RET ib-theme-dark RET
For detailed Emacs installation and usage instructions, see emacs/README.md.
GNU ELPA Submission Status: The iB-theme package has been prepared for GNU ELPA submission with proper copyright assignment and package formatting. See GNU-ELPA-SUBMISSION.md for details.
VIM/Neovim
The install script detects both Vim and Neovim and can install to either or both.
Automatic Installation (Recommended):
cd vim
chmod +x install-vim.sh
./install-vim.sh
Manual Installation (Vim):
# Create colors directory
mkdir -p ~/.vim/colors
# Copy theme files
cp vim/colors/ib-theme-dark.vim ~/.vim/colors/
cp vim/colors/ib-theme-light.vim ~/.vim/colors/
# Add to your .vimrc
echo "colorscheme ib-theme-dark" >> ~/.vimrc
# or for light theme
echo "colorscheme ib-theme-light" >> ~/.vimrc
Neovim
Use the same theme files. Copy to Neovim’s colors directory and add to your config:
mkdir -p ~/.config/nvim/colors
cp vim/colors/ib-theme-dark.vim ~/.config/nvim/colors/
cp vim/colors/ib-theme-light.vim ~/.config/nvim/colors/
- init.vim (
~/.config/nvim/init.vim): colorscheme ib-theme-dark (or ib-theme-light)
- init.lua (
~/.config/nvim/init.lua): vim.cmd('colorscheme ib-theme-dark') (or ib-theme-light)
Plugin Manager Installation:
" Vim-Plug
Plug 'JohnThre/iB-theme', {'rtp': 'vim/'}
" Vundle
Plugin 'JohnThre/iB-theme'
Interactive Loading:
:colorscheme ib-theme-dark
" or
:colorscheme ib-theme-light
For detailed VIM and Neovim installation and usage, see vim/README.md.
CotEditor (macOS)
Import via CotEditor
- Open CotEditor > Settings > Appearance.
- Click the gear icon under the theme list and choose Import….
- Select
coteditor/ib-theme-dark.cottheme and/or coteditor/ib-theme-light.cottheme from the cloned repo.
- Choose iB-theme Dark or iB-theme Light from the theme list.
Install script (copies themes into CotEditor’s application support folder):
cd coteditor
chmod +x install-coteditor.sh
./install-coteditor.sh
Then in CotEditor, go to Settings > Appearance and select the theme.
For more options, see coteditor/README.md.
macOS Terminal and iTerm2
Terminal.app import:
cd terminal
chmod +x install-terminal.sh
./install-terminal.sh
Or import manually from Terminal > Settings > Profiles > Import and select terminal/ib-theme-dark.terminal and/or terminal/ib-theme-light.terminal.
iTerm2 import:
cd terminal
chmod +x install-iterm2.sh
./install-iterm2.sh
Or import manually from iTerm2 > Settings > Profiles > Colors > Color Presets > Import and select terminal/ib-theme-dark.itermcolors and/or terminal/ib-theme-light.itermcolors.
Color Palette
Dark Theme
| Element |
Color |
Hex Code |
| Background |
IBM Gray 100 |
#161616 |
| Editor |
IBM Gray 90 |
#262626 |
| Foreground |
IBM White |
#ffffff |
| Accent |
IBM Blue 60 |
#0f62fe |
| Strings |
IBM Green 50 |
#42be65 |
| Keywords |
IBM Purple 40 |
#be95ff |
| Functions |
IBM Blue 40 |
#78a9ff |
| Classes |
IBM Magenta 40 |
#ff7eb6 |
| Numbers |
IBM Red 40 |
#ff8389 |
Light Theme
| Element |
Color |
Hex Code |
| Background |
IBM White |
#ffffff |
| Editor |
IBM White |
#ffffff |
| Foreground |
IBM Gray 100 |
#161616 |
| Accent |
IBM Blue 60 |
#0f62fe |
| Strings |
IBM Green 60 |
#198038 |
| Keywords |
IBM Purple 60 |
#8a3ffc |
| Functions |
IBM Blue 70 |
#0043ce |
| Classes |
IBM Magenta 70 |
#9f1853 |
| Numbers |
IBM Red 60 |
#da1e28 |
Supported Languages
The theme provides optimized syntax highlighting for:
Web Technologies: JavaScript, TypeScript, HTML, CSS, SCSS, JSON, YAML
Systems Programming: C, C++, Rust, Go
Mobile Development: Swift, Dart, Java, Kotlin
Data Science: Python, R, SQL
Documentation: Markdown, reStructuredText
Configuration: TOML, INI, XML
And many more...
Documentation
Editor-specific installation and usage:
See CONTRIBUTING.md for contribution guidelines.
Development
Building from Source
# Clone the repository
git clone https://github.com/JohnThre/iB-theme.git
cd iB-theme
# Install VS Code Extension Manager
npm install -g @vscode/vsce
# Package the extension
vsce package
# Install locally (replace <version> with the version in package.json)
code --install-extension dist/ib-theme-<version>.vsix
Testing
# Validate JSON files
npm install -g jsonlint
jsonlint themes/ib-theme-dark.json
jsonlint themes/ib-theme-light.json
Signed Releases
Releases are created with signed Git tags and detached GPG signatures for every uploaded artifact. The release helper uses the default local GPG secret key, so configure that key in Git and add its public key to GitHub before publishing.
# Confirm GitHub CLI authentication
gh auth status
# Confirm a default GPG secret key is available
gpg --list-secret-keys --keyid-format=long
# Build, test, package, sign, push the tag, and create the GitHub release
scripts/release.sh
The default tag is v<package.json version>. To override the tag or title:
scripts/release.sh v1.3.1 "iB-theme v1.3.1"
For the full checklist and release flow diagram, see docs/release-process.md.
Contributing
We welcome contributions! Please see our Contributing Guidelines for details.
Quick Start for Contributors
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature
- Make your changes and test thoroughly
- Commit your changes:
git commit -m 'Add amazing feature'
- Push to the branch:
git push origin feature/amazing-feature
- Open a Pull Request
Roadmap
- [x] VS Code/Cursor IDE support
- [x] Dark and Light themes
- [x] GNU Emacs support (v1.0.0) ✨ NEW!
- [x] GNU ELPA preparation (v1.0.0) ✨ NEW!
- [x] VIM/Neovim support (v1.1.0) ✨
- [x] Enhanced error handling and installation scripts (v1.1.1) ✨ NEW!
- [x] Neovim explicit install path and docs
- [x] CotEditor support (macOS)
- [x] macOS Terminal and iTerm2 support
- [ ] GNU ELPA submission (pending FSF copyright assignment)
- [ ] JetBrains IDEs support (v1.2.0)
- [ ] Sublime Text support (v1.2.0)
- [ ] Additional color variants (v2.0.0)
License
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
Author
iB-theme Team
Email: jnc@freew.org
GitHub: @JohnThre
Acknowledgments
Stats

⭐ Star this repository if you find it useful!