Features
- Next.js App Router + TypeScript
- Google login with Firebase Authentication
- List of active campaigns from Firestore
projectscollection - Project detail page:
- campaign description
- X (Twitter) link submit form
- leaderboard per campaign (points set manually by admins)
projects(collection){projectId}(document)title(string)description(string)active(boolean)submissions(subcollection){submissionId}userId(string)userName(string)tweetUrl(string)points(number)createdAt(timestamp)
- Install dependencies
npm install- Run dev server
npm run dev