Giter Club home page Giter Club logo

base17's Introduction

Deprecation notice

After forking from the original base16, we tried to decide what we wanted the "next generation" version of base16 to look like. Base17 was one of the early iterations. While we may end up going in this direction in the future, we have (currently) decided against this specific iteration. Over time, we plan to add a number of features to our "common scheme format" which would expand it to work like base17, but building it out iteratively rather than all at once.

All your themes, everywhere. Color wheel

Style systems and smart build tooling for crafting high fidelity color schemes and easily using them in all your favorite apps. Originally based on the amazing work of Chris Kempson and his Base16 system.

Features

  • Seamless builder support for multiple style systems (Base16, Base17 DRAFT, Base24, etc.)
  • Over 230 beautiful and ready-to-use color schemes. View the Gallery.
  • Over 70 supported GUI and terminal applications. See the full list.
  • Allows end users to choose a color scheme and know it will be available everywhere.
  • Allows color scheme designers to craft a palette of colors once, instantly supporting for many different apps.

Documentation and Specification

The builder and styling specs detail how to compile schemes and templates into application specific configurations.

Scheme

A scheme is a fixed palette of named colors and (optionally) instructions for how those colors should be used by apps.

Style

A style guide provides rules governing how a scheme's palette should be applied within apps. This means each color is used consistently for similar purposes across all your apps. Individual styling guides often support different sized pallets and have different ideas about how those colors should be deployed.

See the individual styling guides for more information on each:

  • Base16 - the original, 16 colors with very fixed semantic meanings.
  • Base17 DRAFT - still 16 colors, but far more power and flexibility to create higher fidelity themes and templates.
  • Base24 - an extra 8 colors for full ANSI support in your terminals.

A scheme is defined using a YAML file. The file specification is in the Builder Guidelines.

Builder

A builder is a build tool used by various template repositories to generate files based on scheme file and template file.

Template

A template describes how a scheme should be transformed to support a specific application. A template repository defines a template file, then uses a builder to generate application specific files using the template.

Templates often include ready-to-use pre-built versions of every scheme. These are typically installed directly by end users to use the schemes in different applications.

Supported Applications

Supported applications are applications for which a template exists.

Official Templates

We maintain a number of templates. Each has been sponsored by at least one project member who is committed to maintaining that template.

We are open to accepting new projects, though they must still be sponsored by a project member and have some level of activity.

Terminals:

Contrib Templates

In order to prevent ownership issues, we're introducing the concept of contrib templates. These are templates which have been transferred to the organization, but either aren't sponsored by an org member or don't have enough usage to warrent inclusion 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 project team.

Unofficial Templates

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.

Terminals - terminal and shell related templates

Editors - templates for use in code editors and IDEs

Window Managers - window managers and related utilities

Programming - defaults and utils for use when programming

Other - various applications which don't fit in other categories

Adding Support for a New Application

To add your own template, submit a pull request to this repository to add your repository to the "Unofficial Templates" list below in the relevant category. Recommended repository naming scheme: [style-name]-[template-name] (with dashes as separators).

Schemes

To add a Base16 scheme, simply submit a pull request to the base16-schemes repo and add your scheme.

Builders

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.

Spec changes will not be released until there is consensus among maintainers and at least one builder with a pull request ready for implementing that spec version.

See the CHANGELOG for more information about changes in the spec.

Scheme and Template Author Resources

The following is a list of useful resources for anyone creating a Base16 scheme and or template:

  • 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.

Tools

If you've written a tool 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.
  • base16.nix - a NixOS / home-manager module to set base16 / base24 schemes and use templates.

Projects

Non-template Themes

  • base16-mutt - a config file for mutt which uses base16 colors from the terminal

Project Chat

Have something you want to discuss, but you're not sure it warrants an issue? Feel free to stop by the #base16 channel on Libera Chat or the bridged Matrix channel to talk about it.

Credits

base17's People

Contributors

chriskempson avatar belak avatar joshgoebel avatar atelierbram avatar ilpianista avatar martinlindhe avatar defman21 avatar mnussbaum avatar obahareth avatar h404bi avatar alexmirrington avatar orhun avatar afq984 avatar vifo avatar lunacookies avatar golf1052 avatar inspectormustache avatar dawikur avatar auditemarlow avatar nhurden avatar ntpeters avatar mikebarkmin avatar jamygolden avatar rgieseke avatar richardneililagan avatar wuqs-net avatar prashcr avatar paaguti avatar diablo-d3 avatar pinpox avatar

Stargazers

(M) avatar NNB avatar luxus avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.