C-3PO
C-3PO copied to clipboard
The metadata overlord and API server for LTTKGP
C3PO
When he's not flying around with the Solos and Skywalkers on the Millenium Falcon, C-3PO decided to help LTTKGP out with managing the huge amount of songs being posted each day to the group and organising them in a database (such a nice guy!) so we can build cool functionality on top of it.
Getting started
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
Prerequisites
-
Docker & Docker Compose
-
Spotify Web API Credentials
You will also need Spotify authorization for fetching song metadata. The prodcude is very straightforward. Register a new application here: Spotify for Developers
That will give you a unique client ID and client secret key to use in authorization flows.
-
Google Application Credentials
Google Application Credentials is an API key that is required to extract YouTube metadata from the Youtube Data API. To get the key, create a new project on the Google Developer Console, enable the YouTube Data API and proceed to
Credentialsand create a new API key.
Setting up
-
Create a
.envfile, using the.env.templatefile as reference.cp .env.template .envFill all the fields using the credentials created as part of the pre-requisites.
Developing
-
Install Development Dependencies
pip install -e . -r requirements/dev.txt -
Install pre-commit hooks
pre-commit install
Starting the server
Run the server with:
docker-compose up
The API server should be accessible at http://localhost:8000/.
Populating the database
Follow the instructions on R2-D2 and start it.
Contributing
Contributions are always welcome. Your contributions could either be creating new features, fixing bugs or improving documentation and examples. Find more detailed information in CONTRIBUTING.md.
License
MIT
