You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2.2 KiB

ladylilia.com

Project structure

  • apps/gifted-subs - Angular application for browsing gifted subs
  • apps/merchandise - Angular application for browsing merchandise
  • apps/quotes - Angular application for browsing quotes
  • apps/regular-subs - Angular application for browsing regular subs
  • apps/schedule - Angular application for viewing livestream schedule
  • apps/twitch-logs - Angular application for browsing Twitch chat logs
  • cms - Grav CMS (Content Management System)
  • nginx - Configuration of NGINX web server
  • instagram-api - Flask application implementing RESTful API for querying Instagram profiles
  • quotes-api - Flask application implementing RESTful API for querying/manipulating the database of quotes
  • teespring-api - Flask application implementing RESTful API for querying Teespring merchandise stores
  • twitch-cache-api - Flask application implementing RESTful API for querying the Twitch cache
  • twitch-subs-api - Flask application implementing RESTful API for querying the database of Twitch subscriptions
  • twitch-webhooks - Flask application managing Twitch webhooks subscriptions and implementing RESTful API for callbacks
  • twitch-events - Websockets server broadcasting Twitch events (retrieved using webhooks)

Deployment

This project consists of 7 container images (instagram-api quotes-api, teespring-api, twitch-cache-api, twitch-subs-api, cms and nginx), that depend on each other - they need to run simultaneously and share certain data between themselves.

Best way to manage that is with docker-compose. Just copy docker-compose.yaml.example into docker-compose.yaml, make necessary adjustments and fire it all up with:

docker-compose up -d

Quotes API key generation

Quotes API key is needed for POST, PUT and DELETE API methods.

If the quotes-api container is running, then the key can be generated like this:

docker exec $QUOTES_API_CONTAINER_NAME python generate_api_key.py $USERNAME $EXPIRATION_TIME_IN_SECONDS

Twitch subs API key generation

Same as above, just replace quotes-api with twitch-subs-api.

Twitch events key generation

Same as above, just replace twitch-subs-api with twitch-events.