StudySprint is a simple full‑stack blog demo used to showcase Cursor's capabilities in web development. It includes a React + Vite client and an Express + MongoDB server, with local file storage for images and Google Gemini for optional AI‑assisted content generation.
client/— React 19 app (Vite, Ant Design, React Router, Quill editor, Marked, React Hot Toast, i18next, Moment, DOMPurify)server/— Express 5 API (MongoDB/Mongoose via Docker, JWT auth, Multer, bcryptjs, CORS, Helmet, express-rate-limit, local file storage, Gemini)
Figma reference: https://www.figma.com/design/3HUPAs6WgN093rjby8REyr/StudySprint?node-id=8678-14409&t=4kyjZcu1PAlkoznc-1
For the full feature list and API documentation, see server/README.md.
- Start the Server (starts local MongoDB via Docker + seeds data)
- Start the Client
See server/README.md and client/README.md for detailed steps. Briefly:
Server
- Copy
server/.env.exampletoserver/.env(credentials are pre-configured, but you can customize them) cd server && npm installnpm run setup(starts local MongoDB in Docker + creates schema + seeds test data)npm run server(starts API on port 5001)
Client
- Copy
client/.env.exampletoclient/.env(already configured for local development) cd client && npm installnpm run dev(starts dev server on port 5173)
Admin Login (after seeding)
- Navigate to
http://localhost:5173/admin - Email:
[email protected]/ Password:admin123
This project uses a local MongoDB database running in Docker (no cloud database needed). The database is automatically set up when you run npm run setup in the server directory.
To view your data:
- Mongo Express (Web UI):
http://localhost:8081(login with yourMONGODB_USER/MONGODB_PASSWORDfromserver/.env) - MongoDB Compass (Desktop): Connect using your
MONGODB_URIfromserver/.env(format:mongodb://USER:PASSWORD@localhost:27017/DATABASE)
See server/README.md and client/README.md for complete environment configuration. Server requires database credentials, JWT_SECRET, and optionally GEMINI_API_KEY. Client only needs VITE_BASE_URL.