Initial public-safe Steerify commit

This commit is contained in:
2026-05-12 17:58:47 -05:00
commit 80239d27a6
9 changed files with 1340 additions and 0 deletions

43
spotify_settings.py Normal file
View File

@@ -0,0 +1,43 @@
import json
from pathlib import Path
CONFIG_PATH = Path(__file__).with_name("spotify_config.json")
DEFAULT_REDIRECT_URI = "http://127.0.0.1:4002/auth"
def loadSpotifySettings():
if not CONFIG_PATH.exists():
return {}
with CONFIG_PATH.open("r", encoding="utf-8") as file:
return json.load(file)
def saveSpotifySettings(clientId, clientSecret, redirectUri=None):
settings = {
"client_id": clientId.strip(),
"client_secret": clientSecret.strip(),
"redirect_uri": (redirectUri or DEFAULT_REDIRECT_URI).strip(),
}
with CONFIG_PATH.open("w", encoding="utf-8") as file:
json.dump(settings, file, indent=4)
file.write("\n")
def spotifySettingsReady():
settings = loadSpotifySettings()
return bool(settings.get("client_id") and settings.get("client_secret"))
def getSpotifySettings():
settings = loadSpotifySettings()
if not settings.get("client_id") or not settings.get("client_secret"):
raise RuntimeError("Spotify setup is incomplete.")
settings.setdefault("redirect_uri", DEFAULT_REDIRECT_URI)
return settings