- Live Demo: https://my-keeper-vto8.onrender.com
- Source Code: https://github.com/shivansh090/MyKeeper
✨ Features
- Create, Update, and Delete Notes: Users can manage their notes efficiently with CRUD operations.
- Authentication: Secure login and registration using JWT to ensure only authenticated users access the app.
- Private Routing: Routes are protected, ensuring access to notes is restricted to authenticated users.
- Responsive Design: Optimized for desktop and mobile, providing a seamless experience across devices.
- Search Functionality: Quickly find specific notes using the search bar.
Tech Stack
-
Frontend
- ReactJS with functional components and hooks
- TailwindCSS for styling
-
Backend
- Node.js with Express
- MongoDB for data storage
- JWT (JSON Web Tokens) for authentication
-
Hosting
- Render for deployment
How to Run
-
Backend Setup:
- Navigate to the server directory:
cd server - Install dependencies:
npm install - Start the backend server:
node index.js
- Navigate to the server directory:
-
Frontend Setup:
- Navigate to the client directory:
cd client - Install dependencies:
npm install - Start the frontend server:
npm run dev
- Navigate to the client directory:
- Open your browser and navigate to
http://localhost:5173.
API Endpoints
POST /api/auth/register: Register a new user.POST /api/auth/login: Login for existing users.GET /api/notes: Fetch all notes for the logged-in user.POST /api/notes: Create a new note.PUT /api/notes/:id: Update an existing note.DELETE /api/notes/:id: Delete a note.
Environment Variables
Set up the following in your .env file:
MONGODB_URL=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret Acknowledgements
- MERN stack community for detailed documentation and resources
- JWT for simplifying secure authentication
- Render for seamless deployment
Enjoy using MyKeeper to manage your notes! If you found the project helpful, don’t forget to star it on GitHub. 🌟
