How atemur/datacase works
DataCase is a Streamlit electricity-market analytics app backed by the EPİAŞ Transparency Platform. Users choose a dashboard, select organizations or units, and view retrieved market, real-time generation, or finalized daily production-plan data in tables and charts. The graph follows the documented and excerpted calls through page routing, organization matching or plant/UEVCB lookup, and API clients; authentication and date/endpoint settings are shared internal layers. Evidence is limited to the README and indexed excerpts; no other source was inspected.
Main entry points: settings.py Dates and endpoints · auth.py TGT authentication · realtime_view.py Realtime dashboard · fdpp_view.py FDPP dashboard
Components 13
Streamlit dashboards
- Page selector
streamlit_run.py - Market dashboard
streamlit_app/market_view.py - Realtime dashboard
streamlit_app/realtime_view.py - FDPP dashboard
streamlit_app/fdpp_view.py
Organization and generation
- GZU matching
utils/matching.py - Plant and UEVCB lookup
utils/organisation_data.py
EPİAŞ API clients
- Market data client
api/market.py - Organization client
api/organisation.py - Generation client
api/generation.py
Shared configuration
- TGT authentication
core/auth.py - Dates and endpoints
config/settings.py
Other components
- Dashboard user
- EPİAŞ platform
Connections 32
- Dashboard user → Page selector: selects page
streamlit_run.py - Page selector → Market dashboard: routes to
streamlit_run.py - Page selector → Realtime dashboard: routes to
streamlit_run.py - Page selector → FDPP dashboard: routes to
streamlit_run.py - Dashboard user → Market dashboard: selects organizations
streamlit_app/market_view.py - Market dashboard → Market data client: fetches market data
streamlit_app/market_view.py - Dashboard user → Realtime dashboard: selects organizations
streamlit_app/realtime_view.py - Realtime dashboard → GZU matching: matches GZUs
streamlit_app/realtime_view.py - Realtime dashboard → Generation client: fetches generation
streamlit_app/realtime_view.py - GZU matching → Organization client: fetches plant lists
utils/matching.py - Dashboard user → FDPP dashboard: selects organizations
streamlit_app/fdpp_view.py - FDPP dashboard → Plant and UEVCB lookup: looks up plants and UEVCBs
streamlit_app/fdpp_view.py - FDPP dashboard → Generation client: fetches production plan
streamlit_app/fdpp_view.py - Plant and UEVCB lookup → Organization client: fetches plants and UEVCBs
utils/organisation_data.py - Market data client → EPİAŞ platform: requests market data
api/market.py - Organization client → EPİAŞ platform: requests organization data
api/organisation.py - Generation client → EPİAŞ platform: requests generation data
api/generation.py - TGT authentication → EPİAŞ platform: requests TGT
core/auth.py - Market dashboard → TGT authentication: uses token
streamlit_app/market_view.py - Realtime dashboard → TGT authentication: uses token
streamlit_app/realtime_view.py - FDPP dashboard → TGT authentication: uses token
streamlit_app/fdpp_view.py - GZU matching → TGT authentication: uses token
utils/matching.py - Plant and UEVCB lookup → TGT authentication: uses token
utils/organisation_data.py - Market data client → Dates and endpoints: reads endpoints
api/market.py - Organization client → Dates and endpoints: reads endpoints
api/organisation.py - Generation client → Dates and endpoints: reads endpoints
api/generation.py - TGT authentication → Dates and endpoints: reads credentials
core/auth.py - Market dashboard → Dates and endpoints: reads dates and organizations
streamlit_app/market_view.py - Realtime dashboard → Dates and endpoints: reads dates and organizations
streamlit_app/realtime_view.py - FDPP dashboard → Dates and endpoints: reads dates and organizations
streamlit_app/fdpp_view.py - GZU matching → Dates and endpoints: reads dates
utils/matching.py - Plant and UEVCB lookup → Dates and endpoints: reads dates
utils/organisation_data.py