Find and manage CMU study groups.
-
npm run devstarts the local Next.js app. -
npm run buildcreates a production build. -
npx tsc --noEmitruns TypeScript validation. -
GET /api/v1/healthverifies the Hono API boundary. -
GET /api/v1/groupsreturns groups ordered by start time; passcourseCodeto filter by course. -
PostgreSQL is configured through
DATABASE_URL; usenpm run db:generateto create a migration after changing the Prisma schema. -
To connect to the Railway Postgres-dev database, create a local SSH key, upload to Railway, install the railway CLI, and run
railway connect Postgres-dev --tunnel-only. Copy the given URL into the .env and .env.local DATABASE_URL before starting the app. You will need to be a member of the Railway project (if you have not been added yet, proceed with creating a local Postgress database). -
To create a local Postgres database with Docker, run:
docker run --name studystarter-postgres \ -e POSTGRES_USER=studystarter \ -e POSTGRES_PASSWORD=studystarter \ -e POSTGRES_DB=studystarter \ -p 5433:5432 \ -d postgres:17
Then add this value to both
.envand.env.local:DATABASE_URL="postgresql://studystarter:studystarter@localhost:5433/studystarter?schema=public"
Prisma CLI reads
.env, while the Next.js app reads.env.local. After setting the URL, runnpx prisma migrate dev, then start the app withnpm run dev. Usedocker stop studystarter-postgresanddocker start studystarter-postgresto stop or restart the local database.
src/appcontains Next.js routes and route layouts.src/features/groupscontains study-group components, hooks, services, filters, and constants.src/features/profilecontains profile components, hooks, services, and profile-specific types.src/componentscontains shared layout, provider, and UI components.src/helperscontains external integration helpers such as calendar/date utilities.src/server/apicontains the Hono API application and route composition.src/stylescontains global and component-level CSS.