How ggc-sd/satisfeedschools works
Satisfeed is an authenticated dashboard for exploring food-assistance demographics and distribution, managing data versions, and viewing geographic context around Georgia schools and libraries. The main user workflow is to sign in, select a data version, and inspect summaries or map-based insights; administrators can also upload data and manage versions. A separate distribution-data workflow parses CSVs, cleans and aggregates addresses, geocodes them, and produces privacy-rounded map data. The graph combines sampled call relationships with README-documented capabilities; unsampled feature internals are represented by their existing source paths.
Main entry points: route.ts Distribution geocoder · page.tsx Summary reports · dashboard-content-display.tsx Insights panels · school-display.tsx School insights
Components 26
Access and versions
- Sign-in
code/src/app/page.tsx - Registration
code/src/app/register/page.tsx - Version management
code/src/app/manage-versions/page.tsx - Version selector
code/src/components/VersionSelector.tsx
Demographic reporting
- Dashboard
code/src/app/dashboard/page.tsx - Summary reports
code/src/app/summary/page.tsx - Demographic charts
code/src/components/ui/DemographicCharts.tsx - County and ZIP maps
code/src/components/CountyMap.tsx
Geographic insights
- Insights dashboard
code/src/app/dashboard-insights/page.tsx - Insights panels
code/src/app/dashboard-insights/components/dashboard-content-display.tsx - School insights
code/src/app/dashboard-insights/components/displays/school-display.tsx - Library insights
code/src/app/dashboard-insights/components/displays/library-display.tsx - Schools map
code/src/app/dashboard-insights/components/map/dashboard-schools-map.tsx - Libraries map
code/src/app/dashboard-insights/components/map/dashboard-library-map.tsx
Data ingestion
- Upload interface
code/src/app/upload/page.tsx - Data upload API
code/src/app/api/upload/route.tsx - Distribution geocoder
code/src/app/api/csv-geocode-upload/geocode/route.ts - CSV parsing
code/src/app/api/csv-geocode-upload/parse.ts - Address filtering
code/src/app/api/csv-geocode-upload/filters.ts - Address aggregation
code/src/app/api/csv-geocode-upload/aggregate.ts - GeoJSON output
code/src/app/api/csv-geocode-upload/geojson.ts
Data services
- Firebase Auth
code/src/firebase/firebaseConfig.tsx - Summary results API
code/src/app/api/getResults/route.tsx - LocationIQ geocoding
code/src/app/api/csv-geocode-upload/locationiq.ts - Firebase data store
code/src/firebase/firebaseConfig.tsx
Other components
- Dashboard user
Connections 25
- Dashboard user → Sign-in: signs in
code/src/app/page.tsx - Sign-in → Firebase Auth: authenticates with
code/src/app/page.tsx - Dashboard user → Registration: creates account
code/src/app/register/page.tsx - Registration → Firebase Auth: registers with
code/src/app/register/page.tsx - Dashboard user → Dashboard: opens dashboard
README.md - Dashboard user → Version management: manages versions
README.md - Dashboard user → Upload interface: uploads raw data
README.md - Upload interface → Data upload API: submits upload
- Dashboard user → Summary reports: views summaries
README.md - Summary reports → Version selector: selects version
code/src/app/summary/page.tsx - Summary reports → Summary results API: fetches results
code/src/app/summary/page.tsx - Summary reports → Demographic charts: renders charts
code/src/app/summary/page.tsx - Dashboard user → Insights dashboard: opens insights
README.md - Insights dashboard → Insights panels: renders panels
code/src/app/dashboard-insights/page.tsx - Insights panels → School insights: shows schools
code/src/app/dashboard-insights/components/dashboard-content-display.tsx - Insights panels → Library insights: shows libraries
code/src/app/dashboard-insights/components/dashboard-content-display.tsx - School insights → Schools map: renders map
code/src/app/dashboard-insights/components/displays/school-display.tsx - School insights → County and ZIP maps: shows geography
- Library insights → Libraries map: renders map
- Distribution geocoder → CSV parsing: parses CSV
code/src/app/api/csv-geocode-upload/geocode/route.ts - Distribution geocoder → Address filtering: filters addresses
code/src/app/api/csv-geocode-upload/geocode/route.ts - Distribution geocoder → Address aggregation: counts and bins
code/src/app/api/csv-geocode-upload/geocode/route.ts - Distribution geocoder → LocationIQ geocoding: geocodes addresses
code/src/app/api/csv-geocode-upload/geocode/route.ts - Distribution geocoder → GeoJSON output: builds features
code/src/app/api/csv-geocode-upload/geocode/route.ts - Distribution geocoder → Schools map: publishes map data