Skip to content

Automated creation of Spotify playlists based on your recent top tracks

Notifications You must be signed in to change notification settings

jace-ys/spautofy

Repository files navigation

spautofy-badge

Spautofy

Automated creation of Spotify playlists based on your recent top tracks. Check it out at https://spautofy.herokuapp.com.

Prerequisites

  • go
  • docker, docker-compose

Usage

  1. Create a .env file in the root directory containing the following environment variables:
SPOTIFY_CLIENT_ID=
SPOTIFY_CLIENT_SECRET=
SENDGRID_API_KEY=
SENDGRID_SENDER_NAME=
SENDGRID_SENDER_EMAIL=
SENDGRID_TEMPLATE_ID=
  1. Start auxiliary containers:
make dependencies
  1. Run the Spautofy server:
make
  1. Access it at http://localhost:8080

You can also start all services directly via a single command:

docker-compose up

Metrics

The following endpoints are available on the metrics server at http://localhost:9090:

/metrics # view HTTP server metrics
/health  # view liveness and readiness
/crons   # view all currently scheduled crons

Deployment

Spautofy is automatically deployed to Heroku on push to master, after Continuous Integration checks have all passed. Any pre-deployment tasks, such as database migrations, are ran as part of the deployment process using Heroku's release phase.

Heroku resources are provisioned via Terraform located in deployment/terraform.

cron-job.org is used to ping the Spautofy server every day at midnight to wake the scheduler for executing cronjobs.

About

Automated creation of Spotify playlists based on your recent top tracks

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published