πŸ‘€ You're viewing a live demo of PitBox β€” explore every section freely; changes aren't saved. Start your league β†’
Changelog
v1.7.0 2026-06-21 Current
  • New Free tier β€” PitBot now has a permanent free plan. Spin up a league at no cost and run it from Discord: log race results, post per-series standings, keep a driver roster and race history, and run check-in polls β€” plus a public league page at yourleague.pitbot.gg. No card required, and it's set up in minutes
  • New Pick your scoring from Discord β€” a new /scoring command lets you choose your championship scoring system (NASCAR stages, F1, IndyCar, MotoGP, endurance, sprint + feature, and more) from a dropdown right in Discord, each with a one-line explainer. Get a new league scored correctly without opening the panel
  • New First-run setup guide β€” new leagues get a guided checklist on the dashboard that walks you through setup in the recommended order (name your league, create a series, set up channels, add drivers, build your schedule) and ticks each step off automatically as you finish it
  • Changed Refreshed billing site β€” the customer billing portal and account pages have a cleaner new look (dashboard, billing, support, and pricing), and the pricing page now shows all four tiers including Free
  • Changed Inactive free leagues are tidied up β€” a free league with no activity for a long stretch gets email warnings, is then archived (taken offline), and its data is kept for a retention period before removal, so unused subdomains are freed. Paid leagues are never affected
v1.6.0 2026-06-20
  • New Bulk-add drivers β€” paste your whole roster at once (from a spreadsheet or a list) and import everyone in one go. Map each column to a field β€” gamertag, default car number, or a specific series' number β€” and link drivers to their Discord accounts right in the paste by @name. A live preview shows exactly who will be added, updated, and Discord-linked before you commit
  • New Season automation, per series β€” set a default race count and PitBox auto-ends the season and crowns the champion when it's reached, then rolls straight into the next season for you if you want. Name new seasons with your own template using {year}, {n} for the season number, and {series}, with a live preview as you type. New seasons inherit the series' default length, and each active season now shows its auto-end target right on the Season page
  • New Supporter badge β€” when a member upvotes PitBot on a bot-listing site (top.gg or Discord Bot List), they earn a ⭐ next to their name on your league graphics for the next 7 days. A small, automatic thank-you for the people helping your league get discovered
  • New Quick Discord commands β€” /panel, /standings, and /drivers give anyone in your server an instant read-only look, and a new /help command explains what PitBot does and how to get set up. /help works in any server, even before it's set up as a league
  • Fix Publishing rules to Discord now tells you exactly what happened when the bot can't post β€” for example, when it's missing permission to send in a locked rules channel β€” instead of the button appearing to do nothing
  • New Warm-up / meet times β€” set a meet time before green flag on any race (e.g. meet 7:00, race 7:30). It shows on check-in polls, day-of reminders, the schedule, and calendar invites β€” and the calendar event and reminder both count down to the meet time, so everyone shows up on time
  • New Series roster channels β€” switch on a roster channel for a series (from the Drivers tab) and PitBox keeps a live, pinned list of every driver and their number in that series, updating itself as you add or edit drivers
  • New Channel naming styles + one-click create β€” choose how a series' Discord channels are named when you set it up (plain, or with emoji like πŸ†γƒ»standings or πŸ†β”‚standings), change it anytime, and spin up any channel β€” standings, results, schedule, check-in, chat, rules, roster, incidents, the notify-roles message, and overall standings β€” with a single πŸͺ„ button that builds it in the right category, locked, and named to match
  • New All-Star / Exhibition races β€” mark a race as an exhibition at race entry; results still post to Discord, but it stays out of the championship (no standings or stats impact, and it doesn't take a points-race number)
  • New Notes in bulk schedule imports β€” add a note after the date on any line when you paste a schedule (e.g. a tribute or "playoff opener") and it imports as that race's note, shown on the schedule
  • Changed Smarter race-entry track picker β€” it now suggests your league's own scheduled and previously-run tracks in schedule order (next race first) instead of a generic list, and works properly on phones
  • Fix Mobile polish β€” the schedule's "Add Race" is now reachable on phones, the dashboard's championship leader no longer runs off the edge of small screens, and the schedule lays out cleanly on more sizes
  • Fix Schedule and check-in channels are now locked to the bot when they're created, so members can't accidentally post in them (check-in RSVP buttons still work)
  • Fix Standings show your full field β€” a series' standings page now lists every driver who has a number for that series (at 0 points until they score), not just drivers who've already scored, so the board isn't empty before a season gets racing
  • New Per-series stewarding channels β€” route incident rulings to each series' own channel, or to one overall channel for the whole server. PitBox works out which series an incident belongs to and posts the decision in the right place
  • Fix Check-in polls now send reliably even with long track and venue names β€” the "Add to calendar" links could get too long for Discord and block the whole poll; they're now compact, with Google, Outlook, and Apple all still included
  • Fix Keep your place through sign-in β€” click Subscribe while logged out and you now land right back on checkout after signing in (with any promo code still applied), instead of getting dropped on the homepage
  • New Check-in by roster (optional) β€” turn on "require a car number to check in" for a series (Channels & Notifications) and only drivers with a number assigned in that series can RSVP to its races; everyone else gets a friendly heads-up to ask an admin. Off by default
  • New Roster check-in nudge β€” when a series requires a car number to check in, the smart "haven't checked in yet" reminder now reaches every driver on that series' roster who has a number, not just notification subscribers, so the whole eligible field gets nudged to RSVP. It has its own editable wording under Admin β†’ Smart Reminders
  • Fix Stage points always count now β€” if a driver runs the stages but has no finishing result (a DNF), they keep their stage points in the championship, the way NASCAR scores it. The Discord standings and the in-app standings now match exactly
  • Fix Race results posts show full points β€” each driver's line now combines their finishing points and stage points for that race (with a πŸ“ˆ stage tag) instead of showing finishing points only
  • New Race entry shows stage values β€” each stage position now displays the points it awards (P1 +100, P2 +90, …) right on the form, so you can see what every spot is worth instead of having to remember
v1.5.2 2026-06-19
  • New Waitlist claim flow (optional, per series) β€” when a full grid frees up a spot, instead of silently bumping the next driver in, PitBox can DM them an offer to claim it: "A spot just opened β€” you're up! [βœ… I'm in] [❌ Pass]." If they pass or run out of time, the spot cascades to the next driver in line automatically, until someone takes it. Turn it on per series under Schedule β†’ series settings (off by default β€” off keeps the simple auto-promote)
  • Changed Fair, fixed claim deadlines β€” each offer's countdown is locked in when it's sent and shown in the race's own time zone, and the window is split by how much time is left before the race, so the whole queue gets a genuine shot at the spot before the green flag
v1.5.1 2026-06-19
  • New Max drivers per race β€” set a grid cap on any series, and when a race fills up extra check-ins automatically join a waitlist. If a confirmed driver drops out, the next driver in line is promoted into the grid instantly. Set it to 0 for no limit (Schedule β†’ series settings)
  • Changed Roomier plan limits β€” Lite now includes up to 50 active drivers and Standard up to 75 (Pro stays unlimited), so running a couple of full fields no longer pushes you up a tier
v1.5.0 2026-06-18
  • New Your league, your rulebook β€” we removed our own league's built-in rules so every league starts with a clean slate that's truly its own. A new starter rule library lets you drop in ready-made sections and edit them, instead of writing every rule from scratch
  • Changed Rules are now per-series β€” each series keeps its own rulebook instead of sharing one set, so your Cup and Trucks series can have different rules
  • New Creating a series' Discord channels now also sets up its rules channel, linked straight to that series' rulebook
  • New Archive a series when it wraps β€” archiving ends its current season, cancels any upcoming races, and keeps all of its race history and data safe. You can optionally remove its Discord channels at the same time, and reactivate the series anytime later (PitBox will even offer to rebuild its channels)
  • New Purge an archived series β€” permanently delete a retired series and everything tied to it (seasons, races, results, schedule, channels). It asks you to type the series name to confirm, since it can't be undone
  • New After you add a new series, PitBox now offers to create its Discord channels right away β€” no extra trip to set them up
  • Changed Your league name, tagline, and logo now live in Community Settings (they used to be on the Landing Page settings page); the recruitment QR card still uses them
  • New Community Settings is now open to anyone with the Landing Page permission, not just the panel owner β€” so you can let a helper manage branding without handing over full ownership. The Discord server ID and dev tools stay owner-only
  • Fix Gold button labels (History, Report an Incident, and others) now sit properly centered β€” text was sitting a hair too high
v1.4.2 2026-06-18
  • New Smart race reminders β€” reminders now arrive as a personal DM instead of a post in the check-in channel: drivers who RSVP'd Going/Maybe get a reminder before their race, and series subscribers who never responded get a friendly nudge to check in. Your check-in channel stays just for the poll
  • New Personal post-race recap DMs β€” after a race is scored, every driver gets a private recap with their finish, points earned, updated championship position, and milestone callouts (first win, podium, new season-best, pole, fastest lap), plus a link to their stat card. Great for engagement β€” and drivers love to screenshot and share them
  • New New Admin β†’ Smart Reminders page β€” customize the exact wording of every automated DM (race reminder, check-in nudge, post-race recap) with a click-to-insert {variable} system and a live preview. Leave a message on its default and it tracks our recommended wording automatically
v1.4.1 2026-06-18
  • New New Statistics screen in Admin β€” see how members engage with your league online: landing-page views, unique visitors, QR-code scans, and how many people clicked through from your Discord standings posts, all with a 30-day trend. Private by design β€” no cookies and no personal data collected
  • New Printable recruitment QR card β€” on the Landing Page settings, generate a poster with your league's logo and a QR code that opens your landing page. Download it as an image to print for race nights or keep on your phone; anyone who scans it lands on your page and can join in a tap (and every scan is counted in Statistics)
  • New Standings posts now pull members onto your site β€” each Discord standings post links to a public, shareable standings page for that series (full board, season stats, and the reigning champion) with a "join the Discord" call to action
  • Fix Fixed the Admin side menu pushing the page content down on some screens β€” it now sits cleanly to the right
v1.4.0 2026-06-18
  • Changed A brand-new look across the entire panel β€” a dark, race-broadcast design with gold accents, bold type, and tabular numbers everywhere. Every page was rebuilt on it and is fully mobile-friendly, so the dashboard, schedule, drivers, and the rest read great on your phone
  • New Redesigned dashboard β€” a hero strip leads with the current championship leader, an adaptive panel shows your season progress (or a next-race countdown when a season has no set length), a showcase highlights the reigning champion, and the leaderboard now shows each driver's last-5 form at a glance
  • New Head-to-Head, reimagined as a "tale of the tape" β€” two drivers side by side with a stat-by-stat comparison, the season head-to-head record, a broadcast-style verdict, and every recent meeting. The shareable image now carries your league logo and a "join the Discord" QR code, so a shared matchup recruits new drivers straight back to your server
  • New A reimagined public stat card β€” the page drivers share to Discord now leads with the stats worth bragging about: win rate, podium rate, grid-beaten %, points per race, and a recent-form streak β€” plus a one-tap Save Image to post it as a graphic, not just a link
  • New Per-series car numbers β€” flip the switch on the Drivers page and a driver can run a different number in each series (e.g. 22 in Cup, 14 in Trucks). Your single league-wide number still works as the default anywhere a series-specific one isn't set, so nothing changes until you want it to
  • New Faster race entry β€” pole, fastest lap, led-a-lap and most-laps-led are now one-tap chips right on each finishing row, with points updating live as you go and a running summary of exactly what will post to Discord. The live points now also reflect your series' DNF/DNP rules
  • New When you edit a past race, you can add a short reason β€” it posts at the top of the updated results in Discord, so members instantly see why a result changed
  • Changed Race History redesigned β€” a season summary up top, then one row per race showing the podium inline; click any race to expand its full finishing order
  • Changed The Drivers roster got a refresh β€” clean number plates, a roster summary (total / active / linked / need-linking), and instant search and filters
  • Changed The reverse-grid tool now shows the transformation visually β€” your source finish on one side, the reversed starting grid on the other
  • Changed Schedule, Season & Series settings, the Scoring Editor and the Rules editor all picked up the new look and read cleanly on mobile
  • Changed The Admin area is now one tidy section with a side menu (Users & Permissions Β· Rules Β· Landing Page) instead of a nav dropdown
  • Changed Dev-team-only controls (View as User and Site Suspension) moved into Community Settings
  • Fix The schedule's "Today!" badge now uses each race's own time zone β€” a race set for tomorrow no longer flips to "Today" late the night before
  • Fix The Schedule quick action and the guided site tour now only appear for users who actually have access to them
  • Changed Behind the scenes, PitBox moved onto its own dedicated, modernized infrastructure β€” faster pages, more reliable Discord posting, and plenty of headroom for what's coming next
v1.3.0 2026-06-17
  • New Per-series scoring systems β€” each series can now run its own points system: NASCAR-style stages, Modern F1, IndyCar, MotoGP, Sprint + Feature, endurance with a double-points finale, short-track heats, or a casual curve. Pick a preset and tweak it, or build one from scratch
  • New New Scoring Editor with a live preview β€” set finishing-position points, bonuses, segments, and season rules and watch a sample race score in real time before applying anything. Includes a points-distribution chart, preset cards, and import/export to reuse a system across series
  • New Member-facing "How it's scored" page β€” a clean, read-only breakdown of a series' current scoring (points table, active bonuses, season rules), linked from the standings
  • Changed Scoring moved out of Users & Permissions and into Season & Series settings, where it now lives per series
  • New Change a scoring system mid-season with confidence β€” you get a plain-English summary of what changed, the option to recalculate past races, and an automatic notice posted to the standings channel
  • Changed Existing leagues were migrated automatically β€” current standings are unchanged; you simply gain the editor, presets, and everything below
  • New Race entry now matches each series' system β€” it shows only the segments and bonuses that series actually uses (an F1 series has no stage boxes; a sprint series shows Sprint + Feature; and so on)
  • New New bonuses β€” led-a-lap (any number of drivers) and most-laps-led, alongside pole, fastest lap (with an optional "top-N finishers only" rule), and per-position finish bonuses
  • New Double-points events β€” tick a box to make a race (e.g. the finale) score double; the results post shows a ⭐ DOUBLE POINTS banner
  • New Penalties & adjustments β€” apply manual point changes per driver (e.g. -10 for an infraction) with a reason; shown on the race results post and reflected in the standings
  • New Reverse-grid generator β€” a tool that builds a reversed sprint/heat starting grid from a prior result, with copy-to-clipboard
  • New Champions are now tracked β€” standings show a πŸ‘‘ crown for the reigning series champion and a πŸ† count of past titles, on the dashboard, landing page, and in Discord
  • New Reigning Champion Spotlight β€” an auto-written highlight that titles the champ by their standout stat (e.g. "The Dominator", "Qualifying King", "Mr. Consistency") and showcases their season. Appears on the dashboard, the landing page, and as a Discord embed beneath the standings (toggle per series)
  • New Season-end champion announcement β€” ending a season posts a pinged crowning message to the race-results channel with the champion's stats and the final standings
  • New Auto-end a season after a set number of races β€” set it when creating or editing a season and PitBox crowns the champion and posts the announcement automatically when the count is reached
  • New Richer End-Season flow β€” preview who would be crowned, then choose to post the announcement, DM season recaps, and/or start the next season, all in one step
  • Changed Season recap DMs modernized β€” they now use full championship points (stage points were previously dropped) and include podiums, poles, fastest laps, and laps-led, with a champion callout
  • Changed Discord stat blocks are now responsive β€” they only show the stats a series actually uses, so there are no more empty "Pole Positions" or "Stage Points" fields on series that don't track them
  • New Title eligibility β€” set a minimum number of races to contend for the championship; drivers below it are flagged in the standings
  • Changed Tidied up the standings post footers (removed duplicated race counts)
  • New Plan limits β€” series and driver counts are now enforced per billing plan, with an in-app upgrade prompt. If billing is ever unreachable, actions are always allowed β€” caps never block a paying league
  • Fix Emoji (🀝 and the like) in landing-page cards and community settings now save correctly, and older saved data self-heals
v1.2.0 2026-06-15
  • New Series now have a Game and a System β€” pick the racing game (iRacing, NASCAR 25, Assetto Corsa, and more) and the platform it runs on (PC, PlayStation, Xbox, Nintendo Switch, cross-platform), or type your own, per series in Season & Series settings
  • New Game + system appear on every Discord card for that series β€” on check-in polls and the schedule they sit in the body next to the date/time; on standings and race results they sit in the footer (keeps the footers from getting crowded)
  • Changed Race results posts refreshed β€” cleaner title plus a footer showing the game, system, and race date
  • Fix Landing page standings now show real championship totals β€” the public board was summing race points only and silently dropping stage points, so totals read far too low; it now uses the same race + stage point math as the logged-in dashboard
  • Fix Landing page standings now show the overall championship across all active seasons combined, instead of a single season
  • Fix Check-in poll embeds are visible again β€” a message flag was accidentally hiding the entire embed (title, date, RSVP list, and calendar links), leaving only the buttons
  • Fix Older check-in polls that were posted while the embed was hidden now heal themselves automatically on the next sync β€” no need to delete and re-send them
  • Fix Check-in RSVP buttons no longer show "This interaction failed" β€” the Discord interaction handler wasn't processing check-in clicks at all; they now register and update the poll in place the instant you tap
  • Fix Notification subscribe and rules-agreement buttons work again β€” the interaction handler was reading the wrong settings field, so it failed to find roles that actually existed
  • Fix Notification subscribe buttons also self-heal β€” if a series role exists in Discord but its saved link was lost, clicking the button re-links it automatically instead of erroring with "No notification role found"
  • Fix The "Can't Make It" button is no longer danger-red, so its ❌ icon is clearly visible (a red ❌ on a red button was washing out)
  • Changed Check-in poll redesign β€” cleaner header with date/time, the season label up top, and the buttons reordered to match the RSVP columns (Going Β· Maybe Β· Can't Make It)
  • New Check-in polls now close automatically when the race starts β€” the poll dims, locks its buttons, and shows "Check-in is closed for this race" with the final attendance list
  • Changed The notification opt-in message is now a polished embed β€” community branding, a clear "what you'll be pinged for" list, and the available series β€” instead of plain text
  • Changed The Discord race schedule post is redesigned as a clean embed β€” the next race is flagged 🟒, with a race count and last-updated stamp
  • Changed Leagues can now be suspended or removed from the BrockDev billing portal. A suspended site shows the Service Suspended page, which now links to billing.brockdev.co so owners can reactivate by managing their plan
  • Changed Panel updates now deploy to all provisioned leagues automatically (the deploy pipeline pulls the live league list from billing instead of a hardcoded list)
  • New Super-admin "View as User" (Admin page) β€” see the panel exactly as another member would, including their permissions and the suspended view. A banner lets you exit the view at any time
  • New Panel access: add users by Discord ID directly (no longer requires the bot to be able to read your full server member list), plus a one-click "sample test user" β€” a base member with no panel access β€” for trying out View as User and the suspended view
  • Fix The race schedule post now reliably edits the existing message on every series update; it no longer occasionally posts a duplicate when a Discord edit hits a transient error (it only re-posts if the original was actually deleted)
v1.1.3 2026-06-15
  • New Check-in polls now use interactive Discord buttons (Going / Can't Make It / Maybe) β€” the RSVP list updates instantly the moment a button is clicked, no polling needed
  • New RSVP responses are stored in the database β€” reminder pings, cancellation notices, and race-change alerts now read from the DB instead of calling the Discord reactions API
  • New Clicking the same RSVP button a second time removes your response (toggle behavior)
  • New Automated database backups run every 30 minutes β€” only saves a new file when data has changed, gzip compressed, 30-day rolling retention
  • Fix Landing page standings heading no longer shows a misleading "Live" badge β€” standings reflect the current season as of page load
v1.1.2 2026-06-13
  • Fix Dashboard is now open to all signed-in Discord users β€” no longer requires being a league admin or on the panel access list to view standings, H2H, or your stat card
  • Fix Nav bar now correctly shows "Dashboard" instead of "Standings"
  • Fix Drivers created via the Discord bot now start hidden β€” an admin must enable them from the Drivers page before they appear in standings
  • Fix Deploy script now correctly pushes each league's own config.php to production β€” production was stuck at v1.0.0 because config was never deployed
v1.1.1 2026-06-13
  • New Head-to-Head is now a tab on the main dashboard β€” no separate page, just click "Head-to-Head" next to Standings
  • New Landing Page is now its own permission β€” you can give a user access to only the Landing Page settings without making them a full admin
  • New Admin menu now only shows the items each user actually has permission to access
  • New Quick Actions (Log Race Result, Race History) only appear for users who have those permissions β€” the dashboard is cleaner for view-only members
  • New H2H access role is now set in Admin β†’ Users & Permissions as a dropdown β€” no more copy-pasting Discord role IDs
  • Fix Discord channel permissions now apply the moment channels are created via Quick Setup β€” no extra step needed
  • Fix Adding races to the schedule now sends one notification (in the schedule channel with role ping) instead of two
  • Fix Notification subscribe message now uses your community name instead of a hardcoded placeholder
  • Fix Notification roles that exist in Discord but lost their saved link are automatically re-discovered
  • Fix Check-in polls now display as a clean Discord embed matching the style of results and standings posts
  • Fix Calendar links in check-in polls no longer expand into large link previews in Discord
  • Changed Check-in advance notice defaults to 6 days before race day (was 7)
  • Changed H2H access settings moved from Landing Page settings to Admin β†’ Users & Permissions
  • New Head-to-Head now has a "The Verdict" summary β€” tells you who owns the rivalry, the win record, and any current winning streak, all in plain English
  • New Head-to-Head rivalry tiles show six quick stats: current winning streak, average finish gap, closest race, biggest blowout, and total meetings
  • New Head-to-Head shows each driver's last 5 head-to-head finishes as colored position pills so you can spot recent form at a glance
  • New Head-to-Head shows each driver's best and worst track based on their H2H race history together
  • New Head-to-Head share button downloads a PNG image of the matchup verdict β€” attach it to any Discord message or post it anywhere
  • New New "My Stats" tab on the dashboard shows your personal championship position, points, wins, top 5s, top 10s, poles, and average finish in one place
  • New My Stats lets you copy your public stat card link with one click β€” paste it in Discord and it unfurls automatically
  • New My Stats lets you jump straight into a Head-to-Head featuring yourself β€” pick your opponent and hit Compare
  • Changed Main page renamed Dashboard β€” Standings, Head-to-Head, and My Stats are all tabs in one place
v1.1.0 2026-06-13
  • New Public league landing page (/land.php) β€” shareable recruiting page with live standings, driver stats, and next race pulled automatically from PitBox data
  • New Per-league accent color theming on the landing page β€” each league brands its own page while the "Powered by PitBox" badge stays constant
  • New Admin-configurable "Why Race With Us" cards, fact pills (driver count, series, race night, years running), and social links (YouTube, Twitch) on landing page
  • New Shareable driver stat card (/statcard.php) β€” public page with season stats, championship position, and Open Graph unfurl for Discord sharing
  • New Head-to-head comparison page (/headtohead.php) β€” Discord-member-only H2H stats across shared races with optional role-gating
  • New Season recap DMs β€” send each driver a personalized stat card embed via Discord DM at the end of a season
  • New Quick channel setup on Season Settings β€” create a Discord category + channels for a series in one click, auto-linked to series settings
  • New Admin dropdown nav β€” Rules, Users & Permissions, Landing Page, and Community Settings consolidated into one Admin menu
  • New Landing Page settings admin page (/landing-settings.php) with accent color picker, why-cards editor, social links, and section toggles
  • New League template (/php-bot/_template/) for spinning up new leagues without manual config
  • New Growth loop footer on landing page β€” "runs on PitBox Β· Want this for your league? brockdev.co/pitbox β†’"
  • Fix Fixed "Unknown column 'key'" fatal error on admin.php and layout.php β€” settings table uses key_name not key
  • Changed setup.php removed from routine deploys β€” only needed for first-time league installs, prevents overwriting existing community settings
  • Changed Per-league CSS deployed from each league's own assets/ folder instead of shared file
v1.0.0 2025-06-01
  • New Initial release of PitBox
  • New Race entry with automatic points calculation
  • New Championship standings posted to Discord automatically
  • New Race schedule with Discord check-in polls
  • New Driver roster management with Discord account linking
  • New Multiple series/seasons support
  • New League rules editor with Discord publishing
  • New Role-based permission system
  • New Race results reposting (with or without notifications)
  • New Reaction-based RSVP check-ins (βœ…/❌/❓)
  • New Automated race reminders 2 hours before race time
  • New Notification subscribe hint in all bot messages
  • New Interactive site tour