- Node.js version 18 or higher
- nvm (Node Version Manager)
- A GitHub account
- A Vercel account connected to your GitHub account
- A Firebase account
- A Google AI API Key from https://aistudio.google.com/app/apikey
git clone https://github.com/eunsongkoh/wics-fullstack-workshop-starter.git
cd wics-fullstack-workshop-starternvm use 18npm installCreate a file called .env.local in the root of your project.
Copy the contents from .env.dev into .env.local using:
cp .env.dev .env.localOpen .env.local and replace the placeholder values with your actual keys:
NEXT_PUBLIC_FIREBASE_API_KEY=your_firebase_api_key
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your_firebase_auth_domain
NEXT_PUBLIC_FIREBASE_PROJECT_ID=your_firebase_project_id
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your_firebase_storage_bucket
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_firebase_messaging_sender_id
NEXT_PUBLIC_FIREBASE_APP_ID=your_firebase_app_id
NEXT_PUBLIC_GEN_AI_KIT=your_google_ai_api_keyNote: The Google AI API key can be obtained at https://aistudio.google.com/app/apikey
Important: All environment variables must start with NEXT_PUBLIC_ for Next.js to expose them to the frontend.
- Go to the Firebase Console
- Click "Add Project" and follow the instructions
- In your Firebase project dashboard, click the Web icon (
</>) - Register your app with any name
- Copy the Firebase SDK config and add those values to your
.env.localas shown above
- Navigate to Authentication > Sign-in Method
- Enable Google sign-in
- Add your email to Authorized domains if necessary
- In Firebase Console, go to Firestore Database
- Click Create Database
- Select Start in test mode
- Keep the default Database ID
users/
└── user_id/
├── interviews/
│ ├── company
│ ├── created_at
│ ├── job_description
│ └── job_title
└── resume/
├── experience/
│ ├── description
│ └── position
├── projects
├── skills
└── other
Run the app locally with:
npm run dev