Context
This is an implementation sub-issue related to C4GT DMP 2026 ticket:
I am taking up MVP-1 so progress can be delivered in small reviewable PRs.
Scope (MVP-1)
- GitHub OAuth login flow
- Contributor profile creation on first login
- Basic profile fields persistence (github_id, username, avatar, joined_at, default_level=L1)
- Protected endpoint to fetch current user profile
.env.example + setup notes for OAuth variables
Out of Scope (for this issue)
- L1/L2/L3 scoring logic
- Maintainer triage queue
- XP/gamification engine
Deliverables
- Backend OAuth + profile APIs
- Minimal frontend login + profile page wiring
- Setup documentation update
- Basic tests for auth/profile endpoints
Acceptance Criteria
- User can sign in with GitHub successfully
- First login creates contributor profile
- Subsequent login returns existing profile
- Protected profile endpoint works with auth
- Local setup works from docs without manual guesswork
PR Plan
I will open one PR for this issue:
feat(auth): github oauth onboarding and contributor profile bootstrap
Context
This is an implementation sub-issue related to C4GT DMP 2026 ticket:
I am taking up MVP-1 so progress can be delivered in small reviewable PRs.
Scope (MVP-1)
.env.example+ setup notes for OAuth variablesOut of Scope (for this issue)
Deliverables
Acceptance Criteria
PR Plan
I will open one PR for this issue:
feat(auth): github oauth onboarding and contributor profile bootstrap