A full-stack exercise tracking application built with the MERN stack (MongoDB, Express, React, Node) and Vite.
Users can create, view, edit, and delete exercises, with persistence handled by MongoDB.
- Full CRUD operations (Create, Read, Update, Delete)
- React + Vite frontend with modular components and routing
- Express.js REST API with input validation
- MongoDB + Mongoose persistence
- Proxy setup for smooth frontend–backend integration
- Development tooling: ESLint, Nodemon
client/ → React + Vite frontend
server/ → Express.js + MongoDB backend
git clone https://github.com/demmerss34/MERN-Exercise-Tracker.git
cd MERN-Exercise-Trackercd server
npm install
cp .env.example .env # Add your MongoDB connection string + port
npm startcd ../client
npm install
npm run devFrontend runs on http://localhost:5173 (default Vite),
Backend runs on http://localhost:3000.
Create a .env file in the server/ folder:
PORT=3000
MONGODB_CONNECT_STRING=mongodb+srv://<username>:<password>@cluster.mongodb.net/db
POST /exercises→ Create exerciseGET /exercises→ Get all exercisesGET /exercises/:id→ Get exercise by IDPUT /exercises/:id→ Update exerciseDELETE /exercises/:id→ Delete exercise
- Frontend: React 18, Vite, React Router DOM, React Icons
- Backend: Node.js, Express.js, Mongoose, dotenv
- Database: MongoDB Atlas
- Dev Tools: Nodemon, ESLint