Skip to content

Onboarding

Welcome. This section gets you from a fresh clone to shipping a change. Read in order the first time through:

  1. Environment setup — toolchain and one-time configuration.
  2. Running the app — devices, build flavours and iOS quirks.
  3. Testing and the quality gate — what every push must pass, and how to work with it instead of against it.

Chorki+ is an OTT streaming app (movies, series, live TV) built with Flutter for Android and iOS. Video is HLS encrypted with AES-128 and unlocked by a key server (the KMS); titles can be downloaded for offline viewing and cast to Chromecast and AirPlay devices. The codebase follows clean architecture (domain → data → presentation) wired together with GetIt, navigated by AutoRoute, and themed by a token-based design system.

I need to… Go to
Understand the layering and DI Architecture
Touch anything around the player Playback then the playback deep dives
Fix a download bug Downloads then the downloads deep dives
Work on UI Design system
Call a new API endpoint Networking and the API reference
Know why startup is the way it is Startup
  • The local gate is the only gate. No CI runs the tests. tool/quality.sh runs before every push via the git hooks — keep it green.
  • Write docs for deep changes. Non-trivial subsystems get a multi-part walkthrough under docs/ in the repo; this site publishes them automatically under Deep dives.
  • Prefer tokens over literals in UI. The design ratchet fails the gate if raw colour/spacing values increase.