Toney
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!
https://github.com/user-attachments/assets/71d4555f-8ea1-4a5c-b1df-c67acbd9248a
β¨ Features
- β‘ 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 Tasks section.
- π Diary Entries - Organize and manage your thoughts with the
Diary section.
- βοΈ Extensive Config - Configurate the app to look and work exactly as
you want.
- π¨ TUI Styling β Clean, responsive interface using
lipgloss.
π Installation
Refer to the docs here. To view all the installation options!
Run this command to ensure Toney is setup perfectly.
toney init
β
Verify Installation
Once installed, you can run:
toney init
π Keybinds
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.
πΊ Roadmap
v2.0.0 Goals
- Overlay Error Popups
- File Import/Export
- Fuzzy Finder in notes
- Recurring and Unique Daily tasks
- Nvim TODO Integration
- Github Issues Integration
- Bug solve
Long Term Goals
- Cross-platform mobile app
- Server sync with configuration & cloud storage
π οΈ Project Structure
βββ 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
π€ Contributing
We welcome contributions! Toney follows Go and Bubbletea conventions. You can also view more details here.
π§Ύ Guidelines
- Follow idiomatic Go formatting (
go fmt, go vet, golint).
- Use
Init, Update, and View separation for all models.
- Keep component responsibilities well-isolated.
- All exported functions/types should be documented with Go-style comments.
- Prefer
tea.Msg messages over direct cross-component function calls.
β
How to contribute
-
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.
π License
MIT License. See LICENSE.
π‘ Inspiration
Toney is inspired by:
Made with π by Nucleo & SourcewareLab