ArrowTracker is a functional online leaderboard and score tracker built for the Pump It Up rhythm game series. It is meant to provide a way for users to not only keep track of their scores but also to provide a ranking system in order to promote competition and allow users to compare scores and skill.
- Home page displaying latest scores in order of newest first
- User dashboard allows players to update their information, profile picture, etc
- Skill Points (SP) awarded for your top play in every chart to give you an overall ranking of your skill
- Images can be uploaded alongside scores to "verify" the score, allowing it to be ranked
- Individual song, chart, and score searching allows players to work towards their goals and analyze player info
- Weekly Challenge - every Friday, the weekly challenge song changes and the leaderboard is saved and reset
- Wiki pages including useful information and documents
- Messaging system between users
- Full mobile device support
- User, song and chart leaderboards as well as individual score pages
- Score submission with moderation and review for ranked scores
- OCR score submission through Discord
- Tournaments with brackets and team support
- Score tracking tools and graphs
- Install requirements via
pip install -r requirements.txt
- Run
python3 dbcreate.py
to create the databases - Download the latest Pump Out database from AnyhowStep's repository and move it to
resources/pumpout.db
- Run
python3 scraperv3.py
to populate the databasepump.db
- Run
python3 create_roles.py
to add roles and titles to the site database - Run
python3 add_support.py
or create an emptysupporters.json
- Fill in the
settings.ini
usingsettings_template
With Docker:
- Install Docker, go to the project directory and build an image using
docker build -t arrowtracker:latest -f Dockerfile.dev .
- Start everything with
docker-compose -f "docker-compose.development.yml" up
Without Docker:
- Install Redis and start a Redis server with
redis-server
- Start a Celery worker with
celery -A app.celery worker -l info -E
- Start a Celery beat with
celery -A app.celery beat
- Run
python3 run.py
orflask run
and connect tolocalhost:5000
A setup script should be made in the future to simplify this process.
- Pump Out (Song database and thumbnail image source)
- Andamiro (Prime 2 profile images)
- daneden's Animate.css
- Miguel Grinberg's
microblog
web application- The code for private messages, notifications, and asynchronous tasks are adapted from Miguel Grinberg's
microblog
web application which is under the MIT license, but this code is licensed under the AGPLv3 along with the rest of ArrowTracker. See the original license here: https://github.com/miguelgrinberg/microblog/blob/v0.21/LICENSE
- The code for private messages, notifications, and asynchronous tasks are adapted from Miguel Grinberg's
I do not own any of the Pump It Up Prime 2 profile images, song banners, or song thumbnails used in this project. All copyrights there go to their respective owners. The rest of the site (everything outside of the default
profile images and the things in app/static/songthumbs
) is owned by myself and the contributors of this repository.