Skip to content
Studeia Docs

Native gamification: XP, badges, leaderboards, contests, rewards

Studeia gamification: XP engine, 11 badge criteria (AND/OR), OB 3.0, Redis leaderboards (course/group, weekly/monthly), contests with 7 metrics, rewards shop with coins, dedicated AI agent

2026-05-31 7 min
Resposta curta

Studeia has complete native gamification: XP engine with hierarchical config (tenant→course), 11 badge criteria with AND/OR boolean logic, badges exportable as Open Badges 3.0-compatible JSON-LD (W3C VC data model; cryptographic signing on roadmap), Redis ZSET leaderboards (course/group scope, alltime/weekly/monthly windows), contests with 7 metrics (lifecycle draft→active→ended), rewards shop with virtual coins and a dedicated AI agent for admins to create strategy via natural chat.

XP engine

handleGamificationEvent() integrated in 7 routes (lesson complete, quiz, chat tutor, forum post/reply, live class join, assignment submit).

Default rules:

  • lessonComplete: 50, quizPass: 30, quizPassFirstTry: 50
  • assignmentSubmit: 40, forumPostCreate: 10, forumReplyCreate: 5
  • chatTutorMessage: 2, liveClassJoin: 20, dailyLogin: 5
  • Streak bonus: 7d=+100, 30d=+500

Levels

Configurable thresholds (default: level N = 100 × N²). Level up triggers the level_up automation event + push notification (mobile). The badge_earned event is emitted when a badge is awarded.

Badges — 11 criterion types

lesson_count, module_count, course_count, xp_threshold, streak_days, mastery_avg, quiz_perfect_count, forum_post_count, study_minutes, badge_collection, compound.

Compound (AND/OR, max depth 3) supported.

Manual badges use criteriaType=manual and can be awarded by authorized teachers/admins; manual is not an automatic criterion type.

Open Badges 3.0

Public page /badges/verify/[userBadgeId] (no auth). Open Badges 3.0-compatible JSON-LD (W3C VC data model) at /api/badges/verify/[userBadgeId], with schema.org EducationalOccupationalCredential. Authenticity is verified via the public URL/API + platform registry — cryptographic proof/signature is not issued yet (roadmap). LinkedIn sharing is manual via the public URL (no native 1-click button yet).

Leaderboards

Redis ZSET. Scopes: course, class_group. Windows: alltime, weekly, monthly. Anonymous mode available.

Contests

Lifecycle draft → active → ended (cron auto-start/end). 7 metrics. Scope course/class/tenant.

Rewards shop

certificate_template, profile_customization, badge_special, virtual_item. Atomic redemption (anti-race). Refund on admin denial.

Gamification AI agent

Admin creates/manages gamification via chat. 19 tools. Loop tool_use max 15 iterations.

Parent reports

Integrated in advanced-reports.ts. Parent portal shows badge grid + streak counter. LLM report cites: "Maria completed 3 courses and earned 5 badges this month".

See also

FAQ

Does Studeia have native gamification?

Yes, complete. XP per activity (hierarchical config tenant→course), configurable levels, badges with 11 automatic criteria (compound AND/OR), Redis ZSET leaderboards with course or class group scope and weekly/monthly/alltime windows, contests with 7 metrics, rewards shop with virtual coins. Plus dedicated AI agent for admin to create strategy via chat.

Do badges follow Open Badges standard?

Yes. Badges export as Open Badges 3.0-compatible JSON-LD (W3C Verifiable Credential data model). Each UserBadge has a public verification page at /badges/verify/[userBadgeId] and a JSON-LD API at /api/badges/verify/[userBadgeId], with schema.org EducationalOccupationalCredential for Google/LinkedIn discovery. Authenticity is verified via the public URL/API and the platform registry. Cryptographic proof/signature and a native LinkedIn 'Add to Profile' button are on the roadmap; today LinkedIn sharing is manual via the public URL.

How to configure XP per lesson completion?

Tenant Settings > Gamification > XP Rules. Each activity has base XP (lessonComplete: 50, quizPass: 30, etc). Course can override (CourseGamificationConfig). Bonus for daily streak, first time, difficulty, etc.

Can I disable gamification in a course?

Yes. CourseGamificationConfig.enabled=false. Student sidebar hides 'Gamification' if student has no active course with gamif enabled. Course sub-nav hides 'Gamification' tab for specific courses with flag off.

Veja tambem

Native gamification: XP, badges, leaderboards, contests, rewards