Mario 64 Rivals is an open-source web application for competing against your best friends (dawww ❤️) in Mario 64. If you want to take a look, I've put a static snapshot of a live version I used to host here.
There are two main classes of records: course records and category records. Course records involve getting stars in a particular course, while category records can be essentially anything (the canonical 16, 70, and 120 star categories are included out of the box).
Users make records by selecting a record class, recording a video of themselves making a record, and submitting their time along with a video link. Mario 64 Rivals displays leaderboards for each type of record, which users can look at see how great they are at Mario 64 😁.
Mario 64 Rivals uses lots of tech. Its direct dependencies are
- Django - the web framework for perfectionists with deadlines
- PostgreSQL - the world's most advanced open source database
- jQuery - the write less, do more, JavaScript library
- Bootstrap - the most popular HTML, CSS, and JS library in the world
- Popper.js - a kickass library used to manage poppers in web applications
- DataTables - table plug-in for jQuery
- Waypoints - a library that makes it easy to execute a function whenever you scroll to an element
- Font Awesome - the iconic SVG, font, and CSS toolkit
- Rollbar - error tracking & crash reporting for software developers
Alright! I'll show you have to get a local server running. Follow these steps:
If you're running Ubuntu, DigitalOcean's instructions are great:
https://www.digitalocean.com/community/tutorials/how-to-install-and-use-postgresql-on-ubuntu-18-04
From the base of this repository, copy .env.example
to
.env
and fill in the DATABASE_*
variables. All the other variables
you can leave as-is, although you may wish to set DEBUG=True
if you
want to change the source code.
Using a virtual environment (or otherwise), install requirements with pip by running
pip3 install -r requirements.txt
To get your database tables working with Mario 64 Rivals, run
./manage migrate
This step is unnecessary if you set DEBUG=True
in your .env
;
otherwise, run
./manage collectstatic
Run
./manage createsuperuser
and follow the instructions that the command gives you.
Now you can run a local Mario 64 Rivals server with
./manage runserver