One-liner pitch: A modern note-taking app with secure Appwrite authentication, notebook organization, favorites, and intelligent tagging for seamless note management.
QuikNote is a lightweight and intuitive note-taking application designed for users who want quick, organized, and secure note management. It allows users to create, organize, and manage notes across multiple notebooks, tag their notes for easy discovery, and mark favorites for quick access. With dark/light theme support and a clean, responsive interface, QuikNote makes note-taking effortless.
Key Features:
- ✅ Secure Authentication: Robust user authentication powered by Appwrite
- ✅ Notebook Organization: Organize notes into multiple notebooks for better structure
- ✅ Favorites: Mark important notes as favorites for quick access
- ✅ Trash Management: Safely delete notes with a recoverable trash feature
- ✅ Theme Support: Dark and light theme options for comfortable viewing
- ✅ Profile Management: Personalized user profiles with account settings
- ✅ Responsive Design: Works seamlessly across desktop and mobile devices
| Layer | Technologies |
|---|---|
| Frontend | React, Vite, JavaScript |
| Authentication | Appwrite (Auth Service) |
| Database | Appwrite (Cloud Database) |
| File Storage | Appwrite Storage |
| UI & UX | Tailwind CSS, shadcn/ui, Lucide React icons, Sonner toasts |
| State Management | React Context API |
| Build Tool | Vite |
| Tooling | ESLint, Prettier |
Comprehensive documentation is available in the /docs folder:
- PRD.md - Product Requirements Document with user stories and features
- ARCHITECTURE.md - System architecture, tech stack decisions, and database schema
- API.md - API surface and response formats
- DEPLOYMENT.md - Deployment, env vars, and operations guide
Key Code Entry Points:
- Authentication:
src/appwrite/auth.js(Auth configuration) - Database:
src/appwrite/db.js(Database operations) - Context Providers:
src/context/*(Auth, Notes, Theme, NoteModal) - Pages:
src/pages/*(Home, Dashboard, Login, Signup, etc.) - Components:
src/components/*(Navbar, Sidebar, NoteModal, etc.) - Utilities:
src/lib/(Config, Utils, Helper functions)
1) Clone the repo
git clone https://github.com/yourusername/QuikNote.git
cd QuikNote2) Install dependencies
npm install3) Set up environment variables
cp .env.sample .env
# then fill in your Appwrite credentials (Project ID, Endpoint, Database ID, Collection IDs, Storage Bucket ID)4) Run the development server
npm run devVisit http://localhost:5173
Contributions are welcome! Please open an issue first to discuss what you'd like to change.
- Fork the project
- Create your feature branch:
git checkout -b feature/amazing - Commit your changes:
git commit -m "Add amazing feature" - Push to the branch:
git push origin feature/amazing - Open a Pull Request
Leonardo Fernandes
- GitHub: @Leonardo1903
- LinkedIn: leonardofernandes1903
This project is licensed under the MIT License. See the LICENSE file for details.
