Spirit of Racing
Race Manager
or press any key
Season
0 of 18 races completed
Leader
Driver Championship
Constructor Championship
Championship Probability
Win Scenarios — Top 5
Career Mode
Enable for AI manager, inbox, goals and narrative
Player identity
Used to auto-detect your driver slot each season
Your Championship
YOUR TEAM
Select your team...
Season —
Player
Inbox
Transfer Assessment — end of season
Roster Editor
Edit driver names and team assignments for this season. Changes apply immediately.
Drivers
Constructors
Calendar
Points System
Race Settings
Used in Career Mode emails for context. Affects how the AI describes race conditions and strategy.
Spirit of Racing
Race Manager
Version 0.8
Developed by
Arm Chair Development
aj@ajmarini.com
AI Narrative Engine
Career Mode powered by Claude by Anthropic.
Inbox, season narrative, transfer offers and race goals
generated via the Anthropic API.
Inspired by
Inspired by all the great racing, and racing games,
of the past, present, and ready for the future.
© 2026 Arm Chair Development. All rights reserved.
Spirit of Racing is an independent production.
Not affiliated with any racing series, manufacturer, or sanctioning body.
Built with ♥ for people who love racing games
Player Manual
Spirit of Racing v0.8 · Arm Chair Development
What Is This?
Spirit of Racing is a single-file HTML motorsport career tracker. Record your race results from a sim racing game and SoR turns them into a living championship — standings, qualifying grids, team dynamics, and (with an API key) a full AI-driven career narrative with emails, goals, and paddock drama.

Everything runs in your browser. No internet required for the core tracker. No account, no server, no installation.
Getting Started
1. Open the HTML file in any modern browser (Chrome, Edge, Firefox, Safari)
2. On the splash screen, select a season and click Enter Season
3. Go to the Career tab — set your Player Name and Driver Slot (the driver whose seat you occupy)
4. Go to Races, open Round 1, and hit Start ▶ to begin

Your save data lives in the browser's localStorage. Use ⬇ Export regularly to back up as a JSON file.
The Two Modes
No API Key Required
🏆 Standings — driver and constructor tables, updated after every round
🏁 Races — qualifying grid, weather, score entry, simulate results
📊 Championship Probability — win scenarios and odds for top drivers
👤 Career page — personal stats, team panel, transfer assessment
😈 Relationships — emoji indicators in standings, auto-updated after each race
🗓 Season Management — create, copy, rename, reset, delete seasons
✏️ Roster Editor — drivers, teams, tiers, calendar, points scale
💾 Export / Import — full save backup and restore as JSON
Requires API Key (Career Mode)
📬 Post-race inbox — emails from manager, teammates, rivals, press, sponsors, stewards
🎯 Goals — manager sets a race target; tracked and referenced in future emails
🔁 Transfer window — contract offers at season boundaries
📋 Season briefing and debrief — narrative arc across the full season
📻 Race Engineer — AI car tuning chat for setup and handling problems
Your Driver Slot
You occupy one driver's seat in the roster. That driver becomes inactive — shown with a 🔴 red dot in the team panel. They still exist in the paddock and may appear in narrative, but they no longer score points.

Your personal points are tracked separately. They travel with you between teams — each team only gets constructor credit for what you score while driving for them.

Active teammates show a 🟢 green dot. The inactive slot driver shows their pre-takeover points for historical reference.
Races & Qualifying
Each round shows a pre-race briefing card when you first click it. Hit Start ▶ to reveal the grid and enter results.

Qualifying grid is generated dynamically each round based on recent form, championship standing, and team strength — with enough variation to keep things interesting. Round 1 is more tier-driven since there's no race history yet.

Weather is shown as a label (Sunny → Storm). Dry conditions are more common than wet.

⚡ Simulate Results auto-fills positions based on qualifying order with noise — useful for rounds you want to move through quickly.
Relationships
Every driver has a relationship level with you, shown as an emoji in the standings table. Click any emoji to see the label and adjust it manually with ± buttons.

😈 Rival — hostile, cold, pointed. Never cordial.
😤 Tense — clipped, guarded, competitive
😐 Neutral
🙂 Friendly — warmer than average
😊 Ally — genuine support, may share information

Relationships shift automatically as the season unfolds. They carry over between seasons — grudges fade but don't disappear entirely.
Inbox (Career Mode + API Key)
Automatic: ~1 second after saving a round, a short manager email arrives with a reaction and goal.

Manual (Check messages): Generates the full batch — teammates, rivals, crew chief, personal assistant, press, sponsors, stewards. The button pulses while generating.

The AI reads your actual standings, nearby rivals, constructor battle, and relationship levels. Relationship levels are mandatory tone modifiers — a Rival will never write a friendly email.
Season Management
Reset Scores — zeros all race results and grid locks. Keeps inbox, goals, and career data. Also clears briefing flags so the Start button reappears for every round.

Start Over — full wipe including personal scores, inbox, goals, and narrative. Completely fresh.

Team Tiers — set in the Roster editor (1 = fastest, 10 = slowest). A wide spread produces more realistic grids. Bunching teams in the 1–3 range makes grids unpredictable.
Saving Your Game
SoR uses browser localStorage — data persists between sessions automatically.

⚠️ localStorage is browser and device specific. Clearing browser data will erase your save. Export regularly.

⬇ Export — downloads a dated JSON backup of everything.
⬆ Import — restores from a JSON file, replacing all current data.

Recommended: export after every session. Keep 2–3 recent backups.
Tips
🏎 Use a wide tier spread. Try 1, 2, 3, 5, 7, 8, 9, 10 instead of 1–3 for the top teams — it produces grids that reflect real mid-field gaps.

📬 The narrative knows your standings. The AI reads your actual points, position, nearby rivals, and constructor battle. It won't hallucinate historical results.

😈 Let relationships develop. They shift based on racing. Manual nudges are available if you want to make peace — or escalate a grudge.

💾 Export before big changes. Before resetting, switching seasons, or editing the roster, export your save as a backup.
Spirit of Racing · © 2026 Arm Chair Development · Built with ♥ for people who love racing games
AI Settings
Configure the Claude AI integration used by Career Mode.
Anthropic API Key
Career Mode uses Claude AI to generate your inbox, season narrative, and transfer offers. Get a key at console.anthropic.com
What AI powers
📬  Post-race inbox — emails from your manager, teammate, rivals, press and sponsors
🏁  Season briefing and debrief — narrative arc across the full season
🔁  Transfer window offers — contract offers at the end of each season
📻  Engineer radio — real-time strategy chat during races
The tracker works fully without AI — standings, races, career stats and season management are all offline.
Model
Using claude-haiku-4-5 — fast and cost-effective for in-game narrative. Typical session cost is a few cents.
Season Manager
Add, rename, or delete seasons. New seasons start blank or copied from an existing season.