Hacker News new | comments | ask | show | jobs | submit login
Show HN: Themer – a CLI for generating themes for all your tools (github.com)
135 points by mjswensen on Dec 28, 2017 | hide | past | web | favorite | 26 comments

Interesting, but a bit light on the terminal support. I've been using https://terminal.sexy/ which supports way more terminals. Notably, for me, Guake, XFCE Terminal, and for when I'm on Windows, PuTTY.

I was expecting to find this within the `themer-terminal` repo, but instead it's just some mac thing.

Good feedback. Yep, themer-terminal is for Terminal.app, the default macOS terminal. Feel free to log issues for supporting other terminals (or take a stab at implementing support for them as described at https://github.com/mjswensen/themer#create-your-own-template).

A while back I posted about the GUI version (https://news.ycombinator.com/item?id=15087244) but I’m realizing the CLI tool is probably more appropriate for the HN crowd.

Themer is a set of npm packages that allow for generating custom, matching themes for many of your development tools (editors, terminal emulators, desktop/device wallpaper, Slack sidebar, Chrome theme, Alfred, etc.). A custom color palette can be used, or there are a number of pre-built palettes to choose from.

Given that my thoughts while looking at the repo were "please don't be js, please don't be js, please don't be... fuck" (don't want to install the whole node toolchain), I'm very glad that a website exists. However, it seems to be down :(

Hah, what are the odds. I post this and 10 minutes later zeit.co's Now service goes down. :(

But the site is just informational--if you don't want to install the Node toolchain, you can use the GUI wrapper around themer (https://github.com/mjswensen/themer-gui), a cross platform app built on Electron. There are downloadable builds for Windows, macOS, and Linux (https://github.com/mjswensen/themer-gui/releases).

Oh fantastic, that works, thank you!

No problem!

There's a great tool called Docker which allows you to not have to worry or care about a toolchain.

Yeah, for something infrequently-used like this it makes sense, but it doesn't work for frequently-used utilities. I wouldn't want to be running grep in Docker, for example. One of these days I'm going to have to look into setting that up, though, hopefully it won't be hard.

Nice work!

From my classification this seems similar to base16 https://github.com/chriskempson/base16

Is this correct and would you like to clarify the benefits of using themer instead of base16? Have you considered intercompatibility by i.e. allow conversion from and to base16 themes?

That is correct! I pointed that out and listed a few differences on the "About" section of the README (https://github.com/mjswensen/themer#about).

One thing I will add is that I found base16 more challenging to use if I wanted to use a custom color set instead of the default ones. It was also difficult for me to tell which packages of that project were maintained, which were deprecated, and how the packages were organized in general.

Awesome, I found that when I reread your description more in detail.

Back to base16, if you'd add base16 as an input and output you'd be able to benefit both by expanding the available set of themes with those of base16 and expanding the set of output formats to those supported by that ecosystem. That would make your tool far more interesting for someone like me who's already using base16.

That's a great idea. The color sets themselves are actually compatible (you'll see that there are eight monochromatic colors and eight accent colors in both systems) and I think there is some low-hanging fruit for interoperability between the two. Fantastic feedback, thank you!

No problem, starred your GitHub project and will be following the development!

At the bottom of the page it says:

themer is inspired by trevordmiller/nova and chriskempson/base16.

Conceptually, themer is very similar to base16, but:

1. It is lighter, and simpler to use. 2. It is more easily extensible with your own color sets and templates. 3. It integrates better with your dotfiles, especially if you keep them under version control.

Here's a suggestion: generate the wallpapers with https://qrohlf.com/trianglify/ - I've taken to using wallpapers created with it (around 50 altogether now), and like the semi-random geometric patterns.

That is a fantastic idea. Noted. Thank you!

One of the reasons I run Solarized Dark theme as my default. Instead of requiring a themer tool to support all the tools I use, I have a theme that is always one of the first themes to be available for my tools. Google mytool+Solarized never let me down.

Solarized is fantastic. Perhaps I'm fickle, but I tend to like to change my theme every few months, and relatively few themes are as good as Solarized when it comes to supporting so many applications.

But I agree that the quick and simple install is a huge plus. Perhaps in the future theme authors could use a tool like themer to generate their themes rather than each author individually spending time figuring out how to apply their theme to a particular tool.

The reason why I not fully believe in it is that there is no huge benefit to the parties for supporting a thing like themer. UIs are highly custom and if X companies make a product seperately you will have as many implementations of the theme keys and variables.

The comparison to mobile development comes to mind. There are cross platform options like cordova or xamarin but they are usually beaten by native implementations. Now, if the cost of doing things twice outweights by large the drop in quality it is still a viable option; hence their existance. However, with themes I’d say the cost of redoing is most likely not outweighting developping in the native application option.

Haven't been able to access the site: https://themer.mjswensen.com/ for the past hour or so...

Yep, it's hosted on Zeit.co's Now service (https://now.sh), and they are experiencing a major service outage today. :( Most of the information on the site can be found either on themer's readme (https://github.com/mjswensen/themer) or the GUI wrapper app's readme (https://github.com/mjswensen/themer-gui).

This seems to only allow you to create Sublime color schemes, it doesn't create a sublime theme. Sublime Theme is to style the whole window outside of the editor.

That's correct. A Sublime UI theme is on the backlog!

Neat, I probably waste too much time trying to make everything go together which is why I tend to stick to popular themes but this seems very useful.

Thanks! I am the same way. Except rather than wasting time trying to find themes that support all the apps I use I wasted a ton MORE time building a tool to do it for me. Haha!

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact