quicknotes

module
v0.0.0-...-2f2da42 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 26, 2025 License: MIT

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
  1. Clone the repository:
git clone https://github.com/2004-nikhil/quicknotes.git
cd quicknotes
  1. Install dependencies:
go mod tidy
  1. Build the application:
go build -o quicknotes cmd/quicknotes/main.go
  1. 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
  • ↑/↓ or j/k: Navigate lists
  • Enter: Select/confirm
  • Esc: Go back/cancel
Note List View
  • Enter: Edit selected note
  • d: Delete selected note
  • q: Return to main menu
Note Editor
  • Ctrl+S: Save note
  • Esc: Cancel editing (without saving)
  • Type your query and press Enter to search
  • Search works across note titles, content, and tags
Folder/Tag Management
  • Enter: Select item or create new folder/tag
  • d: 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:

  1. Meeting Notes - For capturing meeting discussions and action items
  2. Daily Journal - For personal journaling and daily reflections
  3. Project Planning - For project planning and task organization
  4. 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
Contributing
  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. 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 ~/.quicknotes directory 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! πŸ“βœ¨

Directories ΒΆ

Path Synopsis
cmd
quicknotes command
internal
tui

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL