Skip to content

feat: Add automated achievement system triggered by user milestones #209

Description

@amaydixit11

Feature Request

Problem

The Achievement model (models.py) exists but achievements can only be unlocked via manual API calls to /api/achievements/unlock. There's no automated system that awards achievements based on actual user behavior.

Proposed Solution

Implement a rule-based achievement engine:

  1. First Codeforces submission
  2. First LeetCode problem solved
  3. GitHub contributor streak (7, 30, 100 day streaks)
  4. 100/500/1000 total problems solved milestone
  5. First organization join
  6. Top 10 in any platform leaderboard

Technical Notes

The /api/achievements/unlock endpoint already exists. Add a periodic check (Celery beat task) or real-time trigger on data refresh that evaluates achievement conditions and calls the existing unlock endpoint.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementenhancement a2eeef 'Improvements'

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions