Public API
Real-time progression feed. Track live XP, level, and milestones via JSON.
curl https://shawnos.ai/api/statusQuick Start
cURL
curl https://shawnos.ai/api/statusJavaScript (fetch)
fetch('https://shawnos.ai/api/status')
.then(res => res.json())
.then(data => {
console.log(`Level ${data.level}: ${data.title}`)
console.log(`XP: ${data.xp_total} / ${data.xp_next_level}`)
})Python
import requests
response = requests.get('https://shawnos.ai/api/status')
data = response.json()
print(f"Level {data['level']}: {data['title']}")
print(f"XP: {data['xp_total']} / {data['xp_next_level']}")Response Schema
{
"name": "Operator",
"title": "Prompt Apprentice",
"level": 9,
"xp_total": 1882,
"xp_next_level": 2000,
"class": "Polymath",
"avatar_tier": 1,
"milestones": [
{
"id": "first_100xp",
"title": "Spark Plug",
"description": "Earned 100 XP",
"unlocked_at": "2026-02-15T05:51:44Z"
}
],
"updated_at": "2026-02-15T05:51:44Z",
"meta": {
"api_version": "1.0",
"docs": "https://shawnos.ai/api"
}
}namestringCharacter display name
titlestringCurrent RPG title (e.g., 'Terminal Initiate', 'Repo Architect')
levelnumberCurrent level (1-based)
xp_totalnumberTotal accumulated XP
xp_next_levelnumberXP required to reach the next level
classstringPrimary RPG class: Builder, Scribe, Strategist, Alchemist, or Polymath
avatar_tiernumberAvatar visual tier (1-6)
milestonesarrayList of unlocked milestone achievements
updated_atstringISO-8601 timestamp of last profile update
metaobjectAPI metadata including version and documentation URL
Use Cases
Embed Live Stats
Display real-time XP and level on your portfolio or personal site
Discord Bot
Build a bot that tracks progression and announces milestone unlocks
Twitter Automation
Auto-tweet when new milestones are achieved or level-ups occur
Study the Architecture
Examine how a real-time RPG progression system is built and exposed
How This System Works
The RPG system tracks daily output across multiple dimensions: commits, content, GTM deliverables, and more. Each activity type contributes to XP based on weighted scoring.
Data flows from gitignored Python scripts → public JSON → API endpoint. The progression engine scans my work, calculates XP, checks for level-ups, and unlocks milestones based on cumulative stats.
The API endpoint reads from data/progression/profile.json (a public file) and serves it with CORS headers and CDN caching.
Type definitions are available in the rpg.ts file. The core scoring algorithms remain proprietary.
Build Your Own
Want to build a similar system? Here's the architecture:
1. Data Pipeline
Scan your work sources (git, content files, project trackers) and compute scores
2. Persistence Layer
Write computed stats to a public JSON file (safe to commit to git)
3. API Endpoint
Expose the JSON via a public API with CORS and caching headers
4. Frontend Display
Build UI components that fetch and render the progression data
Tool Stack
- ▸Frontend: Next.js, React, Tailwind CSS
- ▸Backend: Python (progression engine), TypeScript (API routes)
- ▸Deployment: Vercel (auto-deploy from GitHub)
- ▸Development: Cursor IDE, Claude Code, MCP servers
- ▸Monorepo: Turborepo with shared packages
I built this using Claude Code and Cursor IDE. The full repo is on GitHub.
About ShawnOS
This API is part of ShawnOS — an AI-powered operating system for GTM engineering and content operations.
Built with MCP servers connecting Cursor IDE, Claude Code, and 15+ automation tools, the system gamifies vibe coding and live building in public.
Every commit, post, and deliverable feeds the progression engine. The RPG system provides real-time feedback and unlocks visual rewards as the work compounds.