The official full-stack web platform for Microsoft Club GIKI, serving as a centralized portal for event management, member directories, project showcases, podcasts, and blog publishing.
- Node.js (v18 or newer) & npm
- A PostgreSQL database instance (e.g., Supabase, Neon, or local PostgreSQL)
-
Navigate to the backend directory and install dependencies:
cd backend npm install -
Set up environment variables: Create a
.envfile in thebackend/folder (refer to.env.example):PORT=5000 DATABASE_URL="postgresql://user:password@host:5432/postgres?sslmode=require" DIRECT_URL="postgresql://user:password@host:5432/postgres?sslmode=require" JWT_SECRET=your_jwt_secret_key ADMIN_EMAIL="admin@example.com" ADMIN_PASSWORD="your_admin_password"
-
Generate Prisma client and push schema to database:
npx prisma generate npx prisma db push
-
(Optional) Seed the initial admin user:
npm run seed:admin
-
Start the backend development server:
npm run dev
Backend runs on
http://localhost:5000.
For a deployment/startup environment, use npm start. It synchronizes the
Prisma schema with the configured PostgreSQL database before starting the API,
so additive schema changes such as the inductions waiting list are available
without a separate manual db push step.
-
Navigate to the frontend directory and install dependencies:
cd frontend npm install -
Configure environment variables: In
frontend/.env, set the backend API URL:VITE_API_URL=http://localhost:5000
-
Start the frontend development server:
npm run dev
Frontend runs on
http://localhost:5173.
- Frontend: React, TypeScript, Tailwind CSS
- Backend: Node.js, Express.js
- Database: PostgreSQL (Prisma)