feat: DevPath Constitution roles, Admin panel and Pathway leaderboards - #811
Merged
Merged
Conversation
devpathindcommunity-india
approved these changes
Jul 8, 2026
Contributor
There was a problem hiding this comment.
Pull request overview
This PR introduces a new “DevPath Constitution” role taxonomy for the Team page, adds a new Admin dashboard for managing “team_members” and awarding points, and replaces the existing Pathway page content with monthly leaderboards sourced from Firestore.
Changes:
- Refactors team directory data to new role categories (Founder/Core Leadership/Technical Lead/City Lead, etc.) and updates the Team page UI accordingly.
- Reworks the Pathway page into a “Monthly Leaderboards” experience backed by a new
team_membersFirestore collection. - Adds a new
/adminpage for managingteam_membersand assigning monthly/total points, alongside new Firestore rules forteam_members.
Reviewed changes
Copilot reviewed 8 out of 9 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| src/data/team.ts | Updates team member taxonomy and seed data structure to new role categories. |
| src/app/team/page.tsx | Replaces the previous Team page implementation with a new sectioned UI driven by TeamCategory. |
| src/app/pathway/page.tsx | Replaces the previous pathway/points explainer with monthly leaderboards sourced from team_members. |
| src/app/admin/page.tsx | Adds a new Admin dashboard for CRUD on team_members and point assignment. |
| firestore.rules | Adds Firestore access rules for the new team_members collection. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
+155
to
+159
| // ─── Team Members ──────────────────────────────────────────────────────── | ||
| match /team_members/{memberId} { | ||
| allow read: if true; | ||
| allow write: if true; | ||
| } |
Comment on lines
+68
to
+72
| const docRef = doc(db, 'admin_keys', selectedRole); | ||
| const docSnap = await getDoc(docRef); | ||
|
|
||
| if (docSnap.exists() && docSnap.data().key === keyInput) { | ||
| onLogin({ role: selectedRole, key: keyInput }); |
Comment on lines
+218
to
+219
| const pts = parseInt(points, 10); | ||
| if (isNaN(pts)) throw new Error('Invalid points'); |
| UserCheck, | ||
| } from 'lucide-react'; | ||
| import { useAuth } from '@/context/AuthContext'; | ||
| import { collection, getDocs, query, where, orderBy } from 'firebase/firestore'; |
Comment on lines
+39
to
+43
| // We sort by monthlyPoints descending | ||
| const tech = validMembers | ||
| .filter(m => m.role === 'Technical Contributor') | ||
| .sort((a, b) => (b.monthlyPoints || 0) - (a.monthlyPoints || 0)); | ||
|
|
Comment on lines
+31
to
40
| const SocialLink = ({ href, icon: Icon }: { href: string; icon: any }) => ( | ||
| <a | ||
| href={href} | ||
| target="_blank" | ||
| rel="noopener noreferrer" | ||
| className="p-2 rounded-full bg-white/5 border border-white/10 hover:bg-white/10 hover:border-white/20 transition-all text-slate-300 hover:text-white" | ||
| > | ||
| <Icon className="w-4 h-4" /> | ||
| </a> | ||
| ); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Fixes # (issue)
Type of change
How Has This Been Tested?
Checklist: