← Projects

Frontend · Web App

SCREAMERCM

A career management companion for the racing game Screamer 2026 — built entirely in vanilla HTML, CSS, and JavaScript.

Type Personal project
Year 2026
Stack HTML, CSS, JS

What is SCREAMERCM?

SCREAMERCM is a browser-based career management tool I built for the racing game Screamer 2026. The game itself has no built-in career tracking, so I made one.

It lets you track a full season across 10 races, manage a live league table with automated point calculations, place bets on opponents before each race with dynamic payout multipliers, and progress through a rank system from Rookie all the way up to Screamer rank.

The app also supports multiple simultaneous save slots, a Duos mode with teammate pairing, and tiered contracts — all stored automatically in the browser using localStorage.

What it does

  • Season tracking

    Follow your career across a 10-race season with live standings updated after every race.

  • League table

    Automated point calculations keep the full driver standings accurate at all times.

  • Betting system

    Place bets on opponents before each race with dynamic payout multipliers based on risk.

  • Rank progression

    Climb from Rookie through a series of ranks up to Screamer based on your results.

  • Multiple save slots

    Run several careers simultaneously, each stored independently in the browser.

  • Duos mode

    Pair up with a teammate and track both careers together with shared standings.

How it's built

The entire app runs in the browser with no backend or framework. I chose vanilla HTML, CSS, and JavaScript deliberately — to keep it fast, dependency-free, and easy to host as a static site on Cloudflare Pages.

All data is persisted using the browser's localStorage API, which means nothing is lost on refresh and no account is needed to use it.

HTML Semantic structure and accessibility
CSS Custom properties, responsive layout
JavaScript Game logic, DOM manipulation, state
localStorage Persistent save slots, no backend needed
Cloudflare Pages Free static hosting with global CDN

What I learned

Building SCREAMERCM without a framework forced me to think carefully about state management. With no React or Vue handling re-renders, I had to design my own pattern for keeping the UI in sync with the data stored in localStorage.

I also learned a lot about the trade-offs of client-side-only storage — it's fast and simple, but it ties data to one browser and one device. In a future version I'd add optional cloud sync for cross-device access.

The betting system in particular taught me to think about edge cases: what happens when a payout would take your balance below zero? What if someone bets on every driver in a race? Thinking through these scenarios made me a more careful developer.

Want to try it?

The app is live and free to use — no account required.