Toney is a fast, lightweight, terminal-based note-taking app for the modern developer. Built with Bubbletea, Toney brings a sleek TUI interface with markdown rendering, file navigation, and native Neovim editing – all in your terminal.
Refer to the docs here. To view all the details!
2025-07-22.11-41-36.mp4
- ⚡ Fast – Minimal memory usage and snappy performance.
- 📝 Markdown Renderer – Styled previews via
glamour. - 🧠 Neovim Integration – Edit your notes using your favorite editor (
nvim). - 📂 File Management – Easily navigate, open, and manage markdown files.
- ✅ Daily Tasks – Keep a record of your daily tasks in the
Daily Taskssection. - 📓 Diary Entries - Organize and manage your thoughts with the
Diarysection. - ⚙️ Extensive Config - Configurate the app to look and work exactly as
youwant. - 🎨 TUI Styling – Clean, responsive interface using
lipgloss.
Refer to the docs here. To view all the installation options!
Run this command to ensure Toney is setup perfectly.
toney init
Once installed, you can run:
toney init
Refer to the docs here. To view all the Default Keybinds!
Keybinds are also visible in the app itself thanks to the bubbles component library.
- Overlay Error Popups
- File Import/Export
- Fuzzy Finder in notes
- Recurring and Unique Daily tasks
- Nvim TODO Integration
- Github Issues Integration
- Bug solve
- Cross-platform mobile app
- Server sync with configuration & cloud storage
├── cmd // CLI
└── internal
├── colors // Styles Config
├── config // Config
├── enums // All enums
├── fileTree // Filtree - manages tree creation for directory
├── keymap // Keymap
├── messages // Messages - has all bubbletea message declarations
├── models // Models - Has all bubbletea models
└── styles // Styles - has all lipgloss styles declarations
We welcome contributions! Toney follows Go and Bubbletea conventions. You can also view more details here.
- Follow idiomatic Go formatting (
go fmt,go vet,golint). - Use
Init,Update, andViewseparation for all models. - Keep component responsibilities well-isolated.
- All exported functions/types should be documented with Go-style comments.
- Prefer
tea.Msgmessages over direct cross-component function calls.
-
Fork the repo and create a feature branch:
git checkout -b feature/my-feature
-
Write your code and make sure it builds:
go build ./...
-
Format your code:
go fmt ./...
-
Commit and push:
git commit -m "feat: add my awesome feature" git push origin feature/my-feature -
Submit a Pull Request 🎉
Please open an issue or discussion for large changes before starting them.
MIT License. See LICENSE.
Toney is inspired by:
- Glow – for markdown rendering
- Lazygit – for terminal UI polish
- Charm ecosystem – for all things delightful in the terminal
Made with 💀 by Nucleo & SourcewareLab