An architecture for building themes based on carefully chosen syntax highlighting using a base of sixteen colors. Base16 provides a set of guidelines detailing how to style syntax and how to code a builder for compiling Base16 schemes and templates.
To add your own template, submit a pull request to https://github.com/chriskempson/base16-templates-source and add your repository to the list below. Repository naming scheme: base16-[template-name] (with dashes as separators).
As a part of the Base16 Project, we maintain a number of templates. Each has been sponsored by at least one base16 project member who is committed to maintaining that template.
We are open to accepting new projects, though they must still be sponsored by a base16 project member and have some level of activity.
- Emacs maintained by belak
- FZF maintained by fnune
- Shell maintained by belak, fnune, and JamyGolden
- Vim maintained by fnune, BonaBeavis, and JamyGolden
In order to prevent ownership issues, we're introducing the concept of contrib templates. These are templates which have been handed over to the base16-project, but either aren't sponsored by a base16-project member or don't have enough usage to warrent including with our official templates.
Submitting a repository to base16-project-contrib and continuing to work on it is a great way to get involved and get noticed as a maintainer so you can work towards getting added to the base16-project team.
If you have a template you maintain, but don't want to submit it to the contrib repositories, feel free to add a link to the repository here to add it to this list. These are community maintained templates and may not be updated often.
- Alacritty maintained by aarowill
- Amfora maintained by jo1gi
- Binary Ninja maintained by evanrichter
- Blink maintained by niklaas
- C Header maintained by m1sports20
- ConCfg maintained by h404bi
- ConEmu maintained by martinlindhe
- Console2 maintained by AFulgens
- ConsoleZ maintained by AFulgens
- Crosh maintained by philj56
- CSS, Less, Sass/Scss & Stylus maintained by samme
- Dunst maintained by khamer
- Frescobaldi maintained by rkubosz
- Gnome Terminal maintained by aarowill
- Godot maintained by Calinou
- GTK+ FlatColor maintained by Misterio77
- GTK+2 maintained by dawikur
- HexChat maintained by Diablo-D3
- Highlight maintained by bezhermoso
- Highlight.js maintained by joshgoebel
- HTML Previews maintained by chriskempson
- i3 maintained by khamer
- i3status maintained by Eluminae
- i3status-rust maintained by mystfox
- iTerm2 maintained by martinlindhe
- Jetbrains maintained by adilosa
- JOE maintained by jjjordan
- kermit maintained by orhun
- Kakoune maintained by leira
- kitty maintained by kdrag0n
- Konsole maintained by cskeeters
- LuaKit maintained by twnaing
- mako maintained by Eluminae
- MinTTY maintained by geoffstokes
- MonoDevelop maintained by netpyoung
- Polybar maintained by Misterio77
- Prism maintained by atelierbram
- prompt-toolkit & ipython maintained by memeplex
- PuTTY maintained by benjojo
- Pygments maintained by mohd-akram
- QOwnNotes maintained by themix-project
- Qt Creator maintained by ilpianista
- qutebrowser maintaned by theova
- Rofi maintained by 0xdec
- Scide maintained by brunoro
- st maintained by honza
- StumpWM maintained by tpine
- Sway maintained by rkubosz
- Termite maintained by khamer
- Termux maintained by kdrag0n
- Textadept maintained by rgieseke
- TextMate & Sublime Text maintained by chriskempson
- Tilix maintained by karlding
- Vim-airline maintained by dawikur
- Vimiv maintained by karlch
- Vis maintained by pshevtsov
- VSCode maintained by golf1052
- Waybar maintained by mnussbaum
- Window Maker maintained by d-torrance
- Windows Command Prompt maintained by iamthad
- Windows Terminal maintained by wuqs-net
- Wofi maintained by knezi
- Xcode maintained by kreeger
- XFCE4 Terminal maintained by afq984
- Xresources maintained by binaryplease
- Xshell maintained by h404bi
- zathura maintained by HaoZeke
To add your own scheme, submit a pull request to the base16-schemes repo and add your scheme.
Normally end-users should not need to use builders, as they're primarily meant for maintainers - both scheme and template maintainers. These are tools used to build templates with all the currently submitted schemes.
Similar to our split between official and unofficial templates, we also have a similar split for builders. Spec changes will not be merged until there is consensus among maintainers and at least one builder with a pull request ready for implementing that spec version.
- Base 16 Builder Go maintained by belak - currently supports 0.10.0
- Base16 Builder Node maintained by JoshGoebel - currently supports 0.9.1
Repository naming scheme: base16-builder-[language] (with dashes as separators). The separate headings are the latest versions of the spec supported by each builder.
- Simplify repo structure and builder responsibilities
- Clarify that using a hash as a part of the color is allowed
- Make baseXX-hex-bgr variables available to templates
- Warn when a template file has been overwritten
- Base 16 Builder Ansible maintained by mnussbaum
- Base 16 Builder PHP maintained by chriskempson
- Base 16 Builder Python maintained by InspectorMustache
- Base 16 Builder Rust maintained by ilpianista
- Add decimal color variables
- Base 16 Builder Clojure maintained by nhurden
- Base 16 Builder Elixir maintained by obahareth
- Base 16 Builder Ruby maintained by obahareth
- Base 16 Builder Typescript maintained by golf1052
- Clarify theme filename generation
- Various clarifications
- Base 16 Builder Perl maintained by loomer
- Drop support for HSL variables
- Base 16 Builder Node.js maintained by richardneililagan
The following is a list of useful resources for anyone creating a Base16 scheme and or template:
- Code Examples - A list of example code file for various languages.
- TmTheme Editor - An online editor for themes in tmTheme format.
- Base16 Template Converter - A script to automatically convert Base16 templates written in the old Embedded Ruby style to the new Mustache style.
If you've written a tool for base16 feel free to add it to the list below:
- auto-base16-theme - A command line tool to create a base16 theme from an input image's color palette.
- base16-manager - A command line tool to install base16 templates and set themes globally.
- base16-shell-preview - A command line tool to preview and set base16-shell themes.
- base16-universal-manager - A command line tool to automatically get, build and set base16 themes globally for all supported applications. Themes and templates are pulled form the official repositories or from a local cache.
- flavours - A command line tool to manage and globally apply base16 templates by specifying a scheme name.
- Themix/Oomox - Graphical application for generating different color variations of a Arc, Materia and Oomox themes (GTK2, GTK3 and others), Archdroid, Gnome-Colors and Numix icons, and terminal palette. Base16 plugin allows to open Base16 YAML files a export both Base16 and its own themes using Base16 Mustache templates.
- base16-spectrum-generator - A Python script for generating
.png
files showcasing the colours in a base16 theme.
- Visual Studio Code - Code Editor
- Atom Editor - Code Editor
- c-Tiles16 - Colorscheming with Variables.
- Spacegray - A set of custom UI themes for Sublime Text 2/3.
- Harmonic16 - A color generator for harmonic Base16 color-schemes.
- Duotone-base16 - A Duotone scheme to Base16 convertor.
- terminal.sexy - Terminal Color Scheme Designer
- Just-Colors - Simple configuration file generator
- Highlight.js - JavaScript syntax highlighter