Your Ideas, Organized 📝
NoteFreq is a modern, full-stack note-taking application built with the MERN stack. Create, manage, and organize your thoughts with a beautiful and intuitive interface.
- 🔐 User Authentication - Secure JWT-based authentication with bcrypt password hashing
- 📝 Rich Note Management - Create, read, update, and delete notes
- 🎨 Beautiful UI - Colorful gradient cards with smooth animations
- 🔍 Smart Search - Quick search through notes with modal popup interface
- 💪 Password Strength Indicator - Real-time feedback for strong password creation
- 👁️ Password Visibility Toggle - Show/hide password feature
- 🌙 Stunning Login Page - Illustrated landscape with frosted glass design
- 📱 Responsive Design - Works seamlessly on all devices
- 🚀 Real-time Updates - Instant UI updates with toast notifications
- 🎯 User-Specific Notes - Each user has their own private notes
- React 19.2.0 - UI library
- Vite 7.2.4 - Build tool and dev server
- React Router DOM - Client-side routing
- Axios - HTTP client
- Context API - State management
- Node.js & Express.js - Server framework
- MongoDB & Mongoose - Database
- JWT (jsonwebtoken) - Authentication tokens
- bcryptjs - Password hashing
- dotenv - Environment configuration
- Node.js (v14 or higher)
- MongoDB Atlas account or local MongoDB installation
- Git
Start the backend server:
npm run devcd frontend
npm installStart the frontend development server:
npm run devThe application will be available at http://localhost:5173
- Register - Create a new account with username, email, and password
- Login - Sign in with your credentials
- Create Notes - Click the + button to create a new note
- Search - Use the search button to find notes quickly
- Edit/Delete - Click on any note to edit or delete it
- Logout - Click the logout button when done
NoteFreq/
├── backend/
│ ├── config/
│ │ └── db.js
│ ├── controllers/
│ │ ├── authControllers.js
│ │ └── notesControllers.js
│ ├── middleware/
│ │ └── authMiddleware.js
│ ├── models/
│ │ ├── User.js
│ │ └── Notes.js
│ ├── routes/
│ │ ├── authRoutes.js
│ │ └── notesRoutes.js
│ ├── .env
│ ├── server.js
│ └── package.json
├── frontend/
│ ├── src/
│ │ ├── components/
│ │ │ ├── Auth.jsx
│ │ │ ├── NotesList.jsx
│ │ │ ├── NoteEditor.jsx
│ │ │ ├── Toast.jsx
│ │ │ └── ConfirmModal.jsx
│ │ ├── context/
│ │ │ └── AuthContext.jsx
│ │ ├── App.jsx
│ │ └── main.jsx
│ ├── index.html
│ ├── vite.config.js
│ └── package.json
└── README.md
- Secure registration with password strength validation
- JWT-based authentication
- Protected routes
- Password visibility toggle
- Colorful gradient cards (6 color themes)
- Real-time search functionality
- Create, edit, and delete notes
- User-specific note filtering
- Frosted glass login page with illustrated landscape
- Custom toast notifications
- Confirmation modals
- Smooth animations and transitions
- Mobile-responsive design
- Password hashing with bcrypt
- JWT token authentication
- Protected API routes
- User-specific data access
- Secure HTTP-only considerations
Contributions are welcome! Feel free to open issues or submit pull requests.
This project is open source and available under the MIT License.
Kokul
- GitHub: @Kokul24
- Built with MERN stack
- Inspired by modern note-taking applications
- UI design inspired by glassmorphism trends
NoteFreq - Organize your thoughts, one note at a time! 📝✨