Confitty
A visual config builder for Kitty terminal
β¨ Pick your settings Β· See the result live Β· Export kitty.conf β¨
Not affiliated with the official Kitty Terminal project.
π What Even Is This?
Kitty terminal is great. Reading 400+ config options to change your font size? Not so great.
Confitty is a visual config builder: tweak everything, see it live in the preview, then export your kitty.conf when you're done. No documentation trauma required.
Meet the Mascot π±
She's Kitty Terminal's ghost cat mascot if someone dropped her in pink paint and then set off a confetti cannon directly in her face. She does not know what year it is. She is thriving. The confetti in her fur is permanent. She has accepted this.
β¨ Features
π¨ Visual Configuration
- Live Preview: Background, opacity, blur, tint, font, padding, margins, border, cursor (block/beam/underline) with blink interval, selection, ANSI palette, tab bar (fade/slant/separator/powerline angled/slanted/round), and URL decoration all update in real time.
- 12 Config Categories: Fonts, cursor, scrollback, mouse, performance, bell, window layout, tab bar, colors, advanced, OS-specific, keyboard shortcuts.
- Simple / Advanced Modes: Beginner-friendly defaults or every option Kitty exposes.
- Global Search: Fuzzy search across 130+ indexed options, keyboard-navigable.
π Themes & Presets
- 47 built-in color themes: Dracula, Nord, Tokyo Night (3 variants), Catppuccin (Latte, FrappΓ©, Macchiato, Mocha), Gruvbox (light + dark, soft + hard), Kanagawa (3 variants), Ayu (3 variants), RosΓ© Pine (3 variants), Solarized (light + dark), Everforest, Material, Nightfox, Monokai Pro, One Dark, One Light, IntelliJ, VS Code, GitHub, Cyberdream, Cobalt2, plus the original Confitty palette.
- 18 full presets: 10 themed setups plus functional profiles for performance, minimal, gaming, accessibility, presentation, remote-server, streaming, and a developer default.
- Quick palette switcher: 16-color picker in the Colors section.
π§ Import & Export
- Import an existing
kitty.confand edit visually; unrecognised directives (kittens, includes, env) survive the round-trip. - Export only writes the values that differ from Kitty's own defaults, so the output is minimal and merge-friendly.
- Version-gated: select your Kitty version (0.15 β 0.47) and the exporter comments out options that don't exist in that release.
π Advanced
- Tab Bar Styles: fade, slant, separator, powerline (angled, slanted, round), all rendered in the preview.
- Cursor Trail: configurable trail length, decay curve, and start threshold.
- Symbol Mapping: point Powerline / Nerd Font codepoints at a specific font without patching glyphs.
- Background: opacity, blur, image, layout, linear scaling, tint, gaps tint.
π Quick Start
Using Confitty
- Open confitty.app (or run locally).
- Navigate using the sidebar to explore config categories.
- Customize settings. Preview updates instantly.
- Review raw output in the Config tab.
- Export your
kitty.conffile.
Applying Your Config
# Save to Kitty config directory
mkdir -p ~/.config/kitty
cp kitty.conf ~/.config/kitty/
# Reload Kitty without restarting
# Press: Ctrl+Shift+F5
Note: If you've remapped the reload shortcut, use your custom binding. See Kitty keyboard shortcuts.
π₯ Importing Existing Configs
Click Import and select your kitty.conf. Confitty parses it and populates the visual editor. Complex configs (custom kittens, include directives, environment variables) are preserved in the output even if they don't map to visual controls.
βοΈ How It Works
Confitty uses a smart diff algorithm that exports only the settings that differ from Kitty's defaults:
- Change font size from 11 to 14? β Output includes
font_size 14 - Leave it at 11? β Not included in output
Why this matters:
- β Keeps configs highly readable and minimal.
- β Avoids overriding defaults that may improve in future Kitty updates.
- β Makes it easy to track exactly what you've customized.
π οΈ Development
Prerequisites
- Bun 1.3+ (recommended) or Node.js 22+
Local Setup
# Clone repository
git clone https://github.com/xcutiboo/Confitty.git
cd Confitty
# Install dependencies
bun install
# Start dev server
bun start
Open http://localhost:4200 in your browser.
Build for Production
bun run build
Output directory: dist/confitty/browser/
π¦ Tech Stack
| Technology | Purpose |
|---|---|
| Angular 21 | Standalone components and signals |
| TypeScript 6 | Strict mode: noUncheckedIndexedAccess, noPropertyAccessFromIndexSignature, strictTemplates, strictStandalone. Zero any casts in src/ |
| Tailwind 3 | Utility classes, design-token palette in global_styles.css |
| Bun 1.3 | Package install, dev server, production build |
| Nx 22 | Workspace tooling (nx serve, nx build) |
Architecture: 100% client-side. The exported kitty.conf is generated, diffed against defaults, and downloaded entirely in the browser. No backend, no telemetry.
π€ Contributing
Contributions are welcome! See CONTRIBUTING.md for:
- Development setup instructions
- Coding conventions and style guide
- How to add new presets or config options
- Pull request guidelines
π License
This project is licensed under the MIT License. See LICENSE for details.
β Support
If Confitty saved you from reading Kitty docs for three hours, consider supporting the project:
Donations help keep the website running and the confetti cannon loaded for our mascot. π
π¬ Community
Join the Discord server to:
- Share your Kitty configs and setups
- Get help with configuration issues
- Discuss terminal customization
- Hang out with other terminal enthusiasts
Made with β€οΈ by xcutiboo
Star β this repo if you found it helpful!