Spectre - Ghostty Config Generator
👻
A beautiful, modern configuration generator for Ghostty terminal
Open Spectre • Features • Getting Started • Roadmap • Contributing
Features
- 👻 Real Ghostty Preview - Live terminal preview powered by libghostty WASM - see exactly how your config will look!
- 🎨 Visual Color Editor - Pick colors with an intuitive color picker and palette editor
- 🎭 200+ Themes - Browse and apply themes from iTerm2 Color Schemes with one click
- 🔤 Font Configuration - Configure font families, sizes, styles, and OpenType features
- ⌨️ Keybind Manager - Create and manage custom keyboard shortcuts
- 📦 100+ Options - Support for all Ghostty configuration options
- 💾 Import/Export - Import existing configs and export ready-to-use config files
- 🔗 Shareable URLs - Share your configuration with others via URL
- 🌙 Dark Mode - Beautiful dark interface that matches your terminal aesthetic
- 📱 Responsive - Works on desktop and mobile devices
Screenshots
Landing Page

Config Editor with Live libghostty Preview

Theme Browser

Getting Started
Online
Visit spectre-ghostty-config.vercel.app to use the tool online.
Local Development
# Clone the repository
git clone https://github.com/imrajyavardhan12/spectre-ghostty-config.git
cd spectre-ghostty-config
# Install dependencies
bun install
# Start development server
bun run dev
# Open http://localhost:3000Build for Production
bun run build
bun run startTech Stack
- Framework: Next.js 16 (App Router)
- Language: TypeScript
- Terminal Preview: ghostty-web (libghostty compiled to WASM)
- End-to-End Testing: Playwright with axe-core
- Styling: Tailwind CSS 4
- UI Components: shadcn/ui
- State Management: Zustand 5
- Package Manager: Bun
- Icons: Lucide React
Ghostty Source of Truth
Spectre treats the official Ghostty project as the source of truth for configuration behavior:
- Ghostty Config Reference for option names, descriptions, defaults, types, platforms, and availability.
- Ghostty Official Docs for broader behavior and release notes.
- Ghostty GitHub/source when documentation is ambiguous or needs source-level confirmation.
Schema changes should be traceable to these upstream sources. Maintainers can run:
bun run schema:checkto compare Spectre's local option IDs against the official Ghostty config reference.
Configuration Categories
| Category | Description |
|---|---|
| Fonts | Font family, size, styles, variations |
| Colors | Theme, palette, background, foreground |
| Window | Decorations, padding, sizing, titlebar |
| Cursor | Style, color, blinking behavior |
| Mouse | Click behavior, scrolling, hiding |
| Clipboard | Copy/paste behavior and protection |
| Keybinds | Custom keyboard shortcuts |
| Shell | Shell integration, command, environment |
| Application | Startup, shutdown, notifications |
| Quick Terminal | Quick terminal dropdown settings |
| macOS | macOS-specific settings |
| Linux | Linux/GTK-specific settings |
| Advanced | Scrollback, shaders, image storage |
Roadmap
Current priorities are upstream Ghostty correctness, end-to-end confidence, accessibility, preview resilience, and contributor readiness. See the public roadmap for planned work and prioritization principles.
Contributing
Contributions are welcome. Start with CONTRIBUTING.md for setup, testing, Ghostty source-of-truth requirements, and the pull request workflow.
- Browse
good first issueandhelp wantedwork. - Ask questions or explore early ideas in GitHub Discussions.
- Read our Code of Conduct before participating.
Support and security
Use SUPPORT.md to choose between Discussions, issues, and upstream Ghostty support. Report vulnerabilities privately according to SECURITY.md; do not open a public security issue.
Acknowledgements
- Mitchell Hashimoto - Creator of Ghostty and libghostty
- Coder - For ghostty-web, the WASM build of libghostty that powers our terminal preview
- iTerm2-Color-Schemes - Theme collection
Related Projects
- Ghostty - The Ghostty terminal emulator
- zerebos/ghostty-config - Inspiration for this project
License
MIT License - see LICENSE for details.