iRacing Event Management System

An entire system for easily and repeatedly managing iRacing events

Problem


I was approached by Next Level Events to build a system to make hosting iRacing events easier for them. The usual approach is to use Google Forms for registrations and can leave a lot of tedious work for event hosts.


Objectives


🖥️ Create a website to host event information and rules

🗄️ Keep a database of all registered participants

🎛️ Provide an admin dashboard to view and track participants

🤖 Build a Discord bot to connect everything and manage tedious tasks


How it works


The main website is a simple React project. Both the 'Event Details' and 'Rulebook' pages pull their content from Markdown files, so the site doesn't need rebuilt anytime NLE needs to change any content.

The registration form is a basic form with some custom field validation. Submissions are sent to a MySQL database to keep a record of all registered participants.

NLE can login to the site and view a Dashboard where they can view participant information and mark when someone has paid their entry fee.

We also set up a Discord server for NLE's community and created a custom bot for managing the server. Parts of the server contain information for the current event and, given that there is an entry fee, these channels should only be visible to those who have paid. One of the bot's main functions is to query the database for all paid participants' Discord usernames and provide them with the required permissions to view these channels.


Tools


ReactBulmaMySQLNode.jsLinux

See it in action



Related blog posts


Built with Gatsby, Netlify CMS, and Bulma by newtjam.

Check out the specifics here.