# silenceisprogrammer/fitfolks architecture

> Architecture diagram of the GitHub repository silenceisprogrammer/fitfolks, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-30). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/silenceisprogrammer/fitfolks
- Repository: https://github.com/silenceisprogrammer/fitfolks

## Overview

FiFolks is a local-first fitness app for students and users in semi-urban and rural India. Its user-facing workflow spans workout discovery and camera-guided sessions, nutrition and meal logging, and challenges, with dashboard and progress views surfacing activity. The README also documents community, location, accessibility, and privacy capabilities. Paths and feature relationships below follow the README’s project structure and descriptions; source excerpts were not provided, so implementation-level calls and screen-to-service wiring cannot be verified.

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_experience["App experience"]
  node_dashboard["Home dashboard"]
  node_onboarding["Onboarding"]
  node_profile["Profile and settings"]
end

subgraph group_fitness["Fitness activities"]
  node_workout_library["Workout library"]
  node_workout_details["Workout details"]
  node_camera_session["Camera workout"]
  node_pose_tracking["Pose tracking"]
  node_pose_overlay["Pose overlay"]
  node_workout_complete["Workout completion"]
end

subgraph group_wellbeing["Nutrition and progress"]
  node_nutrition_dashboard["Nutrition dashboard"]
  node_meal_entry["Meal logging"]
  node_meal_recognition["Meal recognition"]
  node_recognition_service["Recognition service"]
  node_food_details["Food details"]
  node_nutrition_service["Nutrition calculations"]
  node_progress["Progress tracking"]
  node_report["Monthly reports"]
  node_step_service["Step tracking"]
end

subgraph group_community["Community and discovery"]
  node_challenges["Challenges"]
  node_challenge_details["Challenge details"]
  node_leaderboard["Leaderboards"]
  node_accountability["Accountability partners"]
  node_nearby["Nearby places"]
  node_location_service["Location service"]
  node_challenge_service["Challenge management"]
end

subgraph group_platform["Local platform"]
  node_app_state["Persistent app state"]
  node_local_storage[("Device storage")]
  node_translations["Translations"]
  node_theme["Theme and colors"]
  node_root_layout["Root layout"]
end

node_user(("App user"))

node_user -.->|"starts setup"| node_onboarding
node_user -.->|"uses app"| node_dashboard
node_workout_library -.->|"opens details"| node_workout_details
node_workout_details -.->|"starts session"| node_camera_session
node_camera_session -.->|"tracks form"| node_pose_tracking
node_camera_session -.->|"shows overlay"| node_pose_overlay
node_camera_session -.->|"finishes at"| node_workout_complete
node_nutrition_dashboard -.->|"logs meals"| node_meal_entry
node_meal_entry -.->|"recognizes food"| node_meal_recognition
node_meal_recognition -.->|"uses mock service"| node_recognition_service
node_nutrition_dashboard -.->|"views food"| node_food_details
node_nutrition_dashboard -.->|"calculates nutrition"| node_nutrition_service
node_challenges -.->|"opens details"| node_challenge_details
node_challenges -.->|"manages challenges"| node_challenge_service
node_nearby -.->|"finds places"| node_location_service
node_progress -.->|"tracks steps"| node_step_service
node_progress -.->|"views reports"| node_report
node_app_state -.->|"persists locally"| node_local_storage
node_root_layout -.->|"provides languages"| node_translations
node_root_layout -.->|"provides themes"| node_theme

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_dashboard,node_onboarding,node_profile,node_user toneBlue
class node_workout_library,node_workout_details,node_camera_session,node_pose_tracking,node_pose_overlay,node_workout_complete toneAmber
class node_nutrition_dashboard,node_meal_entry,node_meal_recognition,node_recognition_service,node_food_details,node_nutrition_service,node_progress,node_report,node_step_service toneMint
class node_challenges,node_challenge_details,node_leaderboard,node_accountability,node_nearby,node_location_service,node_challenge_service toneRose
class node_app_state,node_local_storage,node_translations,node_theme,node_root_layout toneIndigo
```

## Components

### App experience

- **Home dashboard**
- **Onboarding**
- **Profile and settings**

### Fitness activities

- **Workout library**
- **Workout details**
- **Camera workout**
- **Pose tracking**
- **Pose overlay**
- **Workout completion**

### Nutrition and progress

- **Nutrition dashboard**
- **Meal logging**
- **Meal recognition**
- **Recognition service**
- **Food details**
- **Nutrition calculations**
- **Progress tracking**
- **Monthly reports**
- **Step tracking**

### Community and discovery

- **Challenges**
- **Challenge details**
- **Leaderboards**
- **Accountability partners**
- **Nearby places**
- **Location service**
- **Challenge management**

### Local platform

- **Persistent app state**
- **Device storage**
- **Translations**
- **Theme and colors**
- **Root layout**

### Other components

- **App user**

## Connections

- App user → Onboarding: starts setup
- App user → Home dashboard: uses app
- Workout library → Workout details: opens details
- Workout details → Camera workout: starts session
- Camera workout → Pose tracking: tracks form
- Camera workout → Pose overlay: shows overlay
- Camera workout → Workout completion: finishes at
- Nutrition dashboard → Meal logging: logs meals
- Meal logging → Meal recognition: recognizes food
- Meal recognition → Recognition service: uses mock service (evidence: `README.md`)
- Nutrition dashboard → Food details: views food
- Nutrition dashboard → Nutrition calculations: calculates nutrition
- Challenges → Challenge details: opens details
- Challenges → Challenge management: manages challenges (evidence: `README.md`)
- Nearby places → Location service: finds places (evidence: `README.md`)
- Progress tracking → Step tracking: tracks steps (evidence: `README.md`)
- Progress tracking → Monthly reports: views reports
- Persistent app state → Device storage: persists locally (evidence: `README.md`)
- Root layout → Translations: provides languages
- Root layout → Theme and colors: provides themes
