A custom frontend for vgmdb, providing JSON and RDF
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
docker Reduce concurrency to fit into tiny docker hosts Sep 20, 2018
schema Some products don't have dates, don't require them Aug 30, 2015
scripts Adds a script to validate schema for the site Aug 31, 2015
static Handles https links better Aug 27, 2015
tests Updates the unit tests to handle https://vgmdb.net Jan 26, 2018
vgmdb Supports using Redis as a celery queue and cache May 6, 2018
wsgi Adds files needed for openshift Mar 29, 2014
.gitignore Reorganizes the config setup to be prettier Aug 21, 2015
Dockerfile.app Adds the raml and json schema to the docker image Aug 28, 2015
Dockerfile.reqs Splits up Docker images to a base requirements Aug 22, 2015
README.md Added a README Jun 30, 2013
apache.conf Enables CORS in the default Apache config Aug 28, 2015
app.yaml Adds GAE support Jul 4, 2013
create_gae_bundle.sh Fixes up the Google App Engine deployment Mar 26, 2014
docker-compose.yml Enables redis key expiration Jun 11, 2018
requirements.txt Supports using Redis as a celery queue and cache May 6, 2018
run.py Removes gevent from the main config Aug 3, 2015
supervisor-vgmdb.conf Fixes up the default supervisor config Aug 28, 2015
tests.sh Changes how unit tests are run to work in 2.6 Jun 1, 2014
vgmdb-celeryd.conf Create Celery tasks for seller searches Sep 15, 2013
wsgi.py Fixes up the Google App Engine deployment Mar 26, 2014



VGMdb.net is an excellent resource, containing gigabytes of information about video game music. It documents the relationships between games, albums that represent games, and all the people that contributed to an album.

However, VGMdb does not provide an API to access its information, which provides an obstacle to programs that want to use its information. This site is a way to programmatically access the information on VGMdb.net.

VGMdb.net stores the information of each item at a friendly URL, such as album/79 or artist/137. This friendly url will work on this site. Once there, an overview of the item's information can be found, along with a few extra features.


In the right sidebar, there are links to view the page's information in different formats. The raw information that has been parsed out of the original VGMdb.net item is available in JSON format by adding ?format=json to any URL. The YAML format is also available for this information, available by adding ?format=yaml.

Additionally, an effort has been made to produce RDF tuples representing some of the information in VGMdb. The default HTML view of the data has RDFa encoded into it, allowing any RDFa library to parse the page. Additionally, RDF/XML and Turtle serialization formats are available.

The page will produce the output format that most-closely matches the request's HTTP Accept header. A particular format can be forced by adding ?format=html, ?format=xml, or ?format=turtle arguments to the URL

There are also links to validation services, to verify that the page's data is in fact valid and parseable in the respective formats. The main page doesn't produce any other formats, but every other page does.

Development and Installation

Unit tests are employed, both in the parsing and in the output stages, to validate that the information is being correctly parsed and encoded. Run the tests.sh script to run the tests.

Most of any runtime requirements should be documented in requirements.txt. Use pip install -r requirements.txt to install them.

The run.py example script will start up an HTTP server process for the site. An example Apache2 configuration, using mod_wsgi, is also provided. It should work just as well under any other WSGI server.