README
ΒΆ
π QuickNotes
A beautiful, fast, and intuitive CLI note-taking application built with Go and Bubble Tea. QuickNotes provides a colorful terminal-based interface for creating, organizing, and managing your notes with ease.
β¨ Features
- π Rich Note Management: Create, edit, view, and delete notes with full text editing capabilities
- π Folder Organization: Organize notes into custom folders for better structure
- π·οΈ Tag System: Add and manage tags for easy categorization and filtering
- π Powerful Search: Search through note titles, content, and tags instantly
- π Templates: Use pre-built templates for common note types (meetings, journals, etc.)
- π¨ Beautiful UI: Colorful, modern terminal interface with intuitive navigation
- πΎ Auto-Save: Automatic data persistence with JSON storage
- β‘ Fast Performance: Lightweight and responsive CLI experience
π Installation
Prerequisites
- Go 1.19 or higher
- Git
Build from Source
- Clone the repository:
git clone https://github.com/2004-nikhil/quicknotes.git
cd quicknotes
- Install dependencies:
go mod tidy
- Build the application:
go build -o quicknotes cmd/quicknotes/main.go
- Run QuickNotes:
./quicknotes
Install Globally
To install QuickNotes globally on your system:
go install github.com/2004-nikhil/quicknotes/cmd/quicknotes@latest
Then you can run it from anywhere:
quicknotes
π Usage
Main Menu Navigation
When you launch QuickNotes, you'll see the main menu with these options:
- β New Note: Create a new note from scratch
- π View Notes: Browse and manage existing notes
- π Search Notes: Search through your notes
- π Manage Folders: Create and organize folders
- π·οΈ Manage Tags: Create and organize tags
- π Templates: Use pre-built note templates
- β Exit: Quit the application
Keyboard Shortcuts
Global Controls
β/βorj/k: Navigate listsEnter: Select/confirmEsc: Go back/cancel
Note List View
Enter: Edit selected noted: Delete selected noteq: Return to main menu
Note Editor
Ctrl+S: Save noteEsc: Cancel editing (without saving)
Search
- Type your query and press
Enterto search - Search works across note titles, content, and tags
Folder/Tag Management
Enter: Select item or create new folder/tagd: Delete selected folder/tag (except default folders)q: Return to main menu
π Data Storage
QuickNotes stores your data in a JSON file located at:
- Linux/macOS:
~/.quicknotes/data.json - Windows:
%USERPROFILE%\.quicknotes\data.json
The data file contains:
- All your notes with metadata
- Custom folders and tags
- Application settings
- Note templates
π Default Templates
QuickNotes comes with several built-in templates:
- Meeting Notes - For capturing meeting discussions and action items
- Daily Journal - For personal journaling and daily reflections
- Project Planning - For project planning and task organization
- Quick Idea - For capturing spontaneous ideas and thoughts
π§ Development
Project Structure
quicknotes/
βββ cmd/quicknotes/ # Application entry point
β βββ main.go
βββ internal/tui/ # Terminal UI package
β βββ app.go # Main application runner
β βββ data.go # Data structures and persistence
β βββ model.go # Bubble Tea model
β βββ updates.go # Update logic and event handling
β βββ views.go # UI rendering and view logic
β βββ styles.go # Color schemes and styling
β βββ utils.go # Utility functions
βββ go.mod # Go module file
βββ go.sum # Go dependencies
βββ README.md # This file
Dependencies
- Bubble Tea - Terminal UI framework
- Bubbles - UI components
- Lipgloss - Styling and layout
Contributing
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
π Troubleshooting
Common Issues
Application won't start
- Ensure Go 1.19+ is installed
- Check if all dependencies are installed with
go mod tidy
Data not persisting
- Check if the
~/.quicknotesdirectory has write permissions - Ensure sufficient disk space is available
Display issues
- Try resizing your terminal window
- Ensure your terminal supports colors and Unicode characters
π License
This project is licensed under the MIT License - see the LICENSE file for details.
π Acknowledgments
- Charm for the amazing Bubble Tea framework
- The Go community for excellent tooling and libraries
- All contributors who help improve QuickNotes
Happy note-taking! πβ¨
Click to show internal directories.
Click to hide internal directories.