CLI is everyone's new home. Let's spruce it up.
You spend 8+ hours a day staring at monospaced text on a colored rectangle. That rectangle deserves better than the default profile it shipped with in 2009. This tool lets you craft the terminal aesthetic you didn't know you needed — pick your colors, tweak your fonts, slide your opacity to "just transparent enough to see your desktop wallpaper but not enough to actually read it" — and export a ready-to-import profile for whatever terminal app you're running.
Pick a preset, tweak to taste, export to your terminal. Here are a few of the 24 built-in presets:
![]() |
![]() |
![]() |
| Copilot | Northern Lights | Frosted Mint |
![]() |
![]() |
![]() |
| Arcade Cabinet | BBS 1994 | Tokyo Drift |
![]() |
![]() |
![]() |
| Cherry Blossom | Desert Oasis | Espresso Shot |
An interactive, browser-based terminal profile designer with:
- Live preview that updates as you tweak — see real terminal output (git status, ls, error messages) rendered in your chosen palette
- Preset themes to start from — Copilot, GitHub Dark, GitHub Light, Security, and more
- Full color control — background, foreground, cursor, selection, bold text, and all 16 ANSI colors
- Beyond colors — font family, font size, cursor style, cursor blink, window dimensions, background opacity
- Contrast checker — real-time WCAG contrast ratios so your "aesthetic" choices don't render your terminal unreadable
- Multi-format export — generates downloadable profiles for macOS Terminal (.terminal), iTerm2 (.itermcolors), Windows Terminal (JSON), and Alacritty (TOML)
- Shareable URLs — your entire config is encoded in the URL fragment, so you can share your creation (or inflict it on a coworker)
- Visit the live site
- Pick a preset or start from scratch
- Adjust colors, fonts, and settings to taste
- Watch the live preview update in real-time
- Export to your terminal format of choice
- Import the file using the instructions below
- Bask in the mass compliments about your terminal
macOS Gatekeeper will warn you about the downloaded file because it came from a web browser. This is normal — it happens with any file downloaded from the internet, not just this tool. To get past it:
- Right-click the downloaded
.terminalfile and select Open, or - Run this in Terminal first to remove the quarantine flag:
xattr -d com.apple.quarantine ~/Downloads/Terminal\ Studio\ Profile.terminal - Double-click the file — it opens a preview window and adds the profile to Terminal > Settings > Profiles
- Set it as your default from the Profiles list if you want it to stick
- Open iTerm2 > Settings > Profiles
- Select the profile you want to modify (or create a new one)
- Go to the Colors tab
- Click the Color Presets dropdown at the bottom right
- Select Import and choose the downloaded
.itermcolorsfile - Select the imported preset from the same dropdown to apply it
Font, cursor, and window settings need to be set manually in iTerm2's profile settings — the .itermcolors format only carries color data.
The export gives you a JSON file with a color scheme and profile settings. To apply it:
- Open Windows Terminal > Settings > Open JSON file (or press
Ctrl+Shift+,) - Copy the
schemesarray entry from the downloaded file and paste it into yoursettings.jsonunder the"schemes"key - Copy the profile settings and merge them into your profile under
"profiles" > "defaults"(or a specific profile) - Save the file — Windows Terminal picks up changes immediately
The export gives you a TOML config snippet. To apply it:
- Open your Alacritty config file:
- macOS:
~/.config/alacritty/alacritty.toml - Linux:
~/.config/alacritty/alacritty.toml - Windows:
%APPDATA%\alacritty\alacritty.toml
- macOS:
- Paste the contents of the downloaded file into your config (or replace the relevant sections)
- Save — Alacritty hot-reloads the config automatically
The entire app runs client-side. No data leaves your browser. The export files are generated in JavaScript and downloaded directly. The shareable URLs encode your config in the URL hash: no backend, no database, no cookies, no tracking.
It's a static site. Open index.html in a browser. That's it.
Built with questionable taste and zero npm packages.









