A full-stack web application built with the MERN stack (MongoDB, Express.js, React, Node.js), inspired by the Net Ninja's MERN tutorials. This project demonstrates a practical implementation of RESTful APIs, authentication, and modern front-end development with React.
- User Authentication (JWT-based)
- CRUD operations for resources (e.g., workouts, posts, or custom entities)
- Responsive UI built with React
- State management using Context API or Redux (if implemented)
- RESTful API with Express.js and Node.js
- MongoDB database integration
- Environment variable configuration with dotenv
- Error handling and validation
- Modular code structure for scalability
- Node.js (v14+ recommended)
- npm or yarn
- MongoDB (local or cloud, e.g., MongoDB Atlas)
git clone https://github.com/your-username/HairCare-Routine-Tracker.git
cd HairCare-Routine-Trackercd backend
npm installcd ../frontend
npm installCreate a .env file in the backend directory with the following (modify as needed):
PORT=5000
MONGO_URI=your_mongo_connection_string
JWT_SECRET=your_jwt_secret
Open two terminals:
-
Backend
cd backend npm run dev -
Frontend
cd frontend npm start
The frontend will run on http://localhost:3000 and the backend API on http://localhost:5000.
HairCare-Routine-Tracker/
├── backend/
│ ├── models/
│ ├── routes/
│ ├── controllers/
│ ├── middleware/
│ ├── server.js
│ └── ...
├── frontend/
│ ├── src/
│ │ ├── components/
│ │ ├── pages/
│ │ ├── context/
│ │ ├── App.js
│ │ └── ...
│ └── package.json
└── README.md
- Register as a new user or login with existing credentials.
- Perform CRUD operations on the main resource.
- View your dashboard and interact with the application.
Backend
npm run dev— Start server with hot reloading (nodemon)npm start— Start server
Frontend
npm start— Start React development servernpm run build— Build for production
Pull requests are welcome! For major changes, please open an issue first to discuss what you would like to change.
- Fork the repository
- Create your feature branch (
git checkout -b feature/YourFeature) - Commit your changes (
git commit -m 'Add YourFeature') - Push to the branch (
git push origin feature/YourFeature) - Open a Pull Request
- The Net Ninja for the inspiring MERN Stack tutorials
- MongoDB
- Express.js
- React
- Node.js
Happy Coding!