Releases: pmhalvor/radio
Releases · pmhalvor/radio
Only run Flask for authentication
Refactor out Flask app dependency. Only run streamlit container. Use Flask as a temporary subprocess during authentication. Intended for local use only, in order to be able to authenticate through a web browser and generate a token. See #4 for more details.
Usage:
First run locally to generate token (outside Docker):
make run
Copy .token to where you want to run (w/ cloned repo) and run:
docker compose up
Completely containerized flask/streamlit apps
This initial release consists of a Flask app and a Streamlit app, working together to serve Spotify content.
Required credentials are externally stored in .env. Spotify API token stored in .token and needs to be generated first time when running locally (via authentication in the web browser).
Flask
- Serves as an API bridge between Streamlit and the Spotify Developers API
- Assists in authentication, providing the returned code after login through callback
- Deployed to website on port 8888
- Only accessible through endpoints
Streamlit
- Displays Spotify content (current track and recents)
- Shows a plot of recents popularity versus duration (for now)
- Show a row of recent album artwork, with links to the songs played form them
- include iframe-resizer child script for autoresizing when embedded
- Default styling overridden to better match website
Example:
