feat: Implement OAuth2 integration with Sparkmentis, including authorization code flow and PKCE

  • Added OAuth2 authorization endpoints: GET /oauth/authorize and POST /oauth/token
  • Implemented access and refresh token generation with JWT and hashed storage
  • Created integration APIs for fetching user data, courses, assignments, and homeworks
  • Developed webhook system for event notifications from Sparkmentis to Sparkmentor
  • Added support for scope validation and integration authentication
  • Included tests for PKCE, scope enforcement, and webhook signature verification
  • Updated documentation for Sparkmentor integration with Sparkmentis
pushed
subh05sus/sparkmentis-fork2:44 AM - Jan 10, 2026
subh05sus

subh05sus pushed a major feature to main that implements full OAuth2 integration with Sparkmentis—adding /oauth/authorize and /oauth/token endpoints with PKCE, JWT access and hashed-refresh tokens, plus read-only integration APIs for user, courses, assignments, and homeworks. They also built an outbox/webhook system (with a cron dispatcher), added scope validation and signature verification tests, updated .env.example and seed scripts, and shipped docs for the Sparkmentor integration.