Use this checklist to ensure you've completed all setup steps after cloning the repository.
- Node.js (v16+) installed - Run:
node --version - npm installed - Run:
npm --version - MongoDB installed OR MongoDB Atlas account created
- Git installed - Run:
git --version - Code editor installed (VS Code recommended)
- Repository cloned:
git clone <repo-url> - Navigated to project directory:
cd ACADVault
- Navigate to backend:
cd backend - Dependencies installed:
npm install -
.envfile created:copy .env.example .env(Windows) orcp .env.example .env(Mac/Linux) - Environment variables configured in
backend/.env:-
PORT=5000 -
MONGODB_URIset (local or Atlas) -
JWT_SECRETchanged to secure value -
JWT_EXPIRE=7d -
FRONTEND_URL=http://localhost:3000
-
- MongoDB is running (local) OR Atlas connection string is correct
- Backend starts successfully:
npm run dev - Backend console shows: "Server running on port 5000" and "MongoDB Connected"
- Navigate to frontend:
cd frontend(from root) - Dependencies installed:
npm install --legacy-peer-deps -
.envfile created:copy .env.example .env(Windows) orcp .env.example .env(Mac/Linux) - Environment variable configured in
frontend/.env:-
REACT_APP_API_URL=http://localhost:5000/api
-
- Frontend starts successfully:
npm start - Browser opens at
http://localhost:3000 - No critical errors in console (warnings are okay)
- Backend accessible: Visit
http://localhost:5000 - Frontend accessible: Visit
http://localhost:3000 - Landing page loads correctly
- Can navigate to Login page
- Can navigate to Register page
- Can register a new user
- Can login with registered credentials
- Dashboard loads based on role
- No console errors during navigation
For Local MongoDB:
- MongoDB service is running
- Can connect via:
mongoshormongo - Database
acadvaultis created - Collections are created after first user registration
For MongoDB Atlas:
- Cluster is active
- Network access configured (IP whitelisted)
- Database user created with correct permissions
- Connection string is correct in
.env
If something doesn't work:
- PowerShell execution policy set (Windows):
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser - All dependencies installed without errors
-
.envfiles exist and are not empty - MongoDB is running and accessible
- Ports 5000 and 3000 are not already in use
- No typos in environment variable names
- Correct Node.js version (v16+)
When deploying to production:
-
NODE_ENV=productionset in backend - Strong
JWT_SECRETconfigured - MongoDB Atlas used (not local MongoDB)
- Firebase configured for file storage
- Frontend
REACT_APP_API_URLpoints to production backend - CORS configured correctly
- HTTPS enabled for both frontend and backend
- Database backups configured
- Error logging set up
- Environment variables secured (not in code)
- Firebase Storage configured for file uploads
- Email service configured (SMTP)
- Custom domain configured
- SSL certificates installed
- Analytics added
- Error monitoring (Sentry, etc.)
Your setup is complete when:
✅ Backend server runs without errors
✅ Frontend compiles and runs successfully
✅ MongoDB connection is established
✅ You can register and login
✅ Dashboard loads correctly
✅ No critical errors in browser console
Need Help? Check these resources:
- SETUP.md - Detailed setup instructions
- QUICK_START.md - Fast setup guide
- README.md - Project overview
- Create an issue on GitHub
Completed all checks? 🎉 You're ready to start developing!