Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/benbusby/colorstorm

A color theme generator for editors and terminal emulators
https://github.com/benbusby/colorstorm

atom atom-theme color-themes dark-syntax-theme dark-theme editor-theme intellij-theme nintendo screenshot snes sublime sublime-theme syntax-highlighting theme vim vim-colorscheme vscode vscode-theme zig ziglang

Last synced: 20 days ago
JSON representation

A color theme generator for editors and terminal emulators

Awesome Lists containing this project

README

        



:art: *A command line tool to generate color themes for editors (Vim, VSCode, Sublime, Atom) and terminal emulators (iTerm2, Hyper).*

[![MIT License](https://img.shields.io/github/license/benbusby/colorstorm.svg)](http://opensource.org/licenses/MIT)
[![GitHub release](https://img.shields.io/github/release/benbusby/colorstorm.svg)](https://github.com/benbusby/colorstorm/releases/)
[![build](https://github.com/benbusby/colorstorm/workflows/build/badge.svg)](https://github.com/benbusby/colorstorm/actions)

___

Contents
1. [Install](#install)
1. [Usage](#usage)
1. [Creating Themes](#creating-themes)
1. [Screenshots](#screenshots)

## Install

### Arch Linux (AUR)

`yay -S colorstorm`

### Other distros

In progress, check back soon!

### From Source

- Install [Zig](https://github.com/ziglang/zig/wiki/Install-Zig-from-a-Package-Manager)
- Run: `make release`
- Move `zig-out/bin/colorstorm` into your `PATH`

## Usage

```bash
$ colorstorm [-o outdir] [-g generator] input

-o|--outdir: The directory to output themes to (default: "./colorstorm-out")
-g|--gen: Generator type (default: all)
Available types: all, atom, vscode, vim, sublime, iterm, hyper
-i|--input: The JSON input file to use for generating the themes
See: https://github.com/benbusby/colorstorm#creating-themes
```

#### Supported Editors
- Vim
- VSCode
- Sublime
- Atom

#### Supported Terminal Emulators
- iTerm2
- Hyper

## Creating Themes

You can create themes for all available editors and terminal emulators using a
single JSON file to define the colors. The file should be an array (even for
one theme), with the following structure:

```json
[
{
"theme_name_full": "Moonside",
"theme_name_safe": "moonside",
"color_bg_main": "#000000",
"color_bg_alt1": "#080808",
"color_bg_alt2": "#131313",
"color_fg": "#ffffff",
"color_linenr": "#9e5dc8",
"color_select": "#5a1359",
"color_type": "#f6f929",
"color_accent": "#fd35fa",
"color_string": "#ff6693",
"color_boolean": "#fd9935",
"color_variable": "#c67ff4",
"color_number": "#aaef64",
"color_comment": "#7ca454",
"color_function": "#5e9aff"
},
{
...
}
]
```

Value names are mostly self-explanatory, but here is a breakdown of what each field means:


Field
Explanation


theme_name_full
The full name of the theme that will appear in theme file documentation


theme_name_safe
The value to use as the filename for the theme


color_bg_main
Primary background color


color_bg_alt1
A separate background color to use for UI elements like file trees and tab bars


color_bg_alt2
A separate background color to use for UI elements like line numbers and gutters


color_fg
The foreground color (all generic text)


color_linenr
The color used for line numbers


color_select
The color used for selecting a word or lines of text


color_type
The color used for variable types (int, float, etc)


color_accent
An "accent" color -- typically used for special cases (like current line number highlight or badge backgrounds)


color_string
The color used for strings


color_boolean
The color used for boolean values


color_variable
The color used for variable instances and constants


color_number
The color used for numeric values


color_comment
The color used for code comments


color_function
The color used for function names

## Screenshots

- [Earthbound Themes](https://github.com/benbusby/earthbound-themes)

[![Vim Installs](https://img.shields.io/static/v1?label=vim&message=a%20lot&color=green&logo=vim)](https://www.vim.org/scripts/script.php?script_id=5920)
[![VSCode Installs](https://img.shields.io/visual-studio-marketplace/i/benbusby.earthbound-themes?label=vscode&color=4444ff&logo=visual-studio-code)](https://marketplace.visualstudio.com/items?itemName=benbusby.earthbound-themes)
[![Package Control](https://img.shields.io/packagecontrol/dt/Earthbound%20Themes?color=ff4500&label=sublime&logo=sublime-text)](https://packagecontrol.io/packages/Earthbound%20Themes)
[![APM](https://img.shields.io/apm/dm/earthbound-themes-syntax?color=dark-green&label=atom&logo=atom)](https://atom.io/packages/earthbound-themes-syntax)

### Earthbound

![Earthbound Screenshot](img/screenshots/earthbound.png)

### Moonside

![Moonside Screenshot](img/screenshots/moonside.png)

### Zombie Threed

![Zombie Threed Screenshot](img/screenshots/threed.png)

### Fire Spring

![Fire Spring Screenshot](img/screenshots/fire_spring.png)

### Devil's Machine

![Devil's Machine Screenshot](img/screenshots/devils_machine.png)

### Dusty Dunes

![Dusty Dunes Screenshot](img/screenshots/dusty_dunes.png)

### Magicant (Light Theme)

![Magicant Screenshot](img/screenshots/magicant.png)

### Cave of the Past (Monochrome)

![Cave of the Past Screenshot](img/screenshots/cave_of_the_past.png)