Skip to content

Latest commit

 

History

History
46 lines (24 loc) · 1.86 KB

README.md

File metadata and controls

46 lines (24 loc) · 1.86 KB

Personal and rival score tracker for DJMAX Technika 3.

Quickly and easily see your scores as well as those from your rivals. Score comparison shows how far ahead or behind you are, and sortable columns makes it simple to see your best and worst scores. DJRivals also includes master ranking for all modes!

Back-end

This part of DJRivals is written completely in Python and consists of several modules. Its primary job is to retrieve score data from the DJMAX website and parse it into JSON files. Secondary tasks include retrieving various images and generating the front-end. Everything is done automatically by running the two functions, update() and sync(), found in the update.py module.

Front-end

This is the website the user sees and is largely generated by the back-end. It relies heavily on JavaScript and the jQuery library. All of the ranking tables are dynamically created using AJAX calls to load the appropriate JSON files.

Update Process

The DJRivals database is a collection of JSON files. Each disc, discset, and mission has its own. DJRivals updates them one by one (oldest first) throughout the day at varying intervals. It takes roughly 24 hours to update the entire database.

Even though the database is in a constant update cycle, the changes still have to be pushed to the website manually. This is done once every day or every other day. The timestamp at the bottom of the site displays the average age of the entire database.

Tools

  • Python
  • JavaScript
  • jQuery
  • jQuery UI
  • HTML
  • CSS
  • tablesorter
  • tokeninput

License

DJRivals is distributed under the Simplified BSD license. See LICENSE for more details.