Hi, I'm Chandra. Chandra means moon in Telugu, which is why there's one up there.
I'm a mobile engineer in Bangalore, and for the last 8+ years I've built apps and the backends behind them for FinTech, HealthTech, EdTech, HRMS and e-commerce. Today I'm a Principal Software Engineer (Mobile) at mPokket, where I lead the Flutter work on SkillZi, a learning and rewards app used by 100K+ people. Over the years I've led teams of up to 8 engineers, and the apps I've shipped have held 99.8%+ crash-free users.
The things I enjoy most are Flutter architecture, Bluetooth LE and wearables, payments and app security. After work I make small apps I wish existed, mostly open source and ad-free, in Telugu, Hindi and English. I also write down what I've learned, and send fixes to other people's projects when I find a bug.
Each one does a single job. They're open source and free of ads, and the ones that run on one phone keep your data on that phone.
Faith, games and a little fun
- Devalay is a devotional app: aarti and bhajans, the Bhagavad Gita, Panchang, a virtual Mandir, a japa mala and Rashifal, with Telugu support. APK · website
- Chittilata brings the Telugu paper-chit games Chittilu Aata and Raja Rani to real-time multiplayer. The server enforces the rules, so nobody can cheat. APK
- Puli Meka is Tiger and Goats, the board game of Kadapa and Rayalaseema, in Telugu and English. APK
- Tambola Host runs a Housie night with a voice caller, printable tickets and a claim checker. open in browser
- Gully Cricket Scorer scores street and weekend matches ball by ball, and works offline. open in browser
Everyday tools
- ScrollLess counts the Reels and Shorts you watch and how long you scroll. APK
- Notification Batch holds noisy notifications and delivers them a few times a day. Calls, alarms and OTPs still come straight through. APK
- Data Pack Meter shows live speed in the status bar and how much of today's data pack is left, app by app. APK
- Medicine Reminder is made for elderly parents: reminders spoken in Telugu, Hindi or English, and a family check for missed doses. APK
- DueDay reads bill and EMI due dates from your SMS, on the phone, and reminds you before they're due. APK
- Chat Media Cleaner finds large, duplicate and old chat media. You review everything, and deleted files sit in a 7-day trash. APK
- Best Clock has a world clock, alarms that still ring after a reboot, a lap stopwatch and a timer, with dark, light and OLED themes. APK
- Grabbit is an Android browser that finds videos, audio and images on a page and downloads them, HLS streams included. APK
- UPI Split splits a bill and sends each friend their own UPI payment link, equally, by shares or by amount. open in browser
- Heart Rate Web connects any Bluetooth heart-rate strap to the browser for live bpm, zones, HRV and export. open in browser
- Tatkal Helper is a Chrome extension for IRCTC Tatkal booking with saved passengers, one-click form fill and a countdown. You still do every click yourself. download · website
Dart packages
- ble_gatt_parser turns raw bytes from heart-rate straps, BP cuffs, oximeters, scales and cycling sensors into typed Dart objects. playground
- ble_device_simulator simulates BLE health and fitness devices so you can test apps without hardware.
- india_validators validates PAN, GSTIN, Aadhaar, IFSC, UPI ID, mobile and PIN code, with real checksums.
- upi_kit builds, parses and validates UPI payment links and Bharat QR codes, with CRC checks. playground
Guides and templates
- mobile-system-design has worked case studies for UPI payments, wearable sync, offline chat, live tracking and more. read online
- flutter-architect-handbook has 67 Flutter interview and architecture questions, from junior to architect. practise as flashcards
- flutter-agent-skills holds
AGENTS.mdrules and skills that help AI coding agents write production-quality Flutter. - flutter-production-starter is a template app with clean architecture, Riverpod 3, go_router, environments, SSL pinning, tests and CI.
- jobright is a local AI job-search agent that tailors your resume from real facts and applies only with your approval.
When something I use is broken, I'd rather fix it than work around it. Each badge below shows the live state of the pull request.
Flutter, Dart and their ecosystem
| Project | What I fixed | Status |
|---|---|---|
| flutter/flutter | Screen readers kept announcing a text's old label or language after it changed | |
| flutter/flutter | Animated box decorations lost their blend mode until the last frame | |
| flutter/packages · material_ui | Button theme equality ignored the button bar layout | |
| flutter/flutter | TableBorder lost its rounded corners while animating |
|
| flutter/flutter | Text fields ignored a changed spell-check selection colour | |
| flutter/packages · material_ui | SnackBar theme dropped its close button during theme animations | |
| flutter/packages · cupertino_ui | iOS theme equality ignored the selection handle colour | |
| flutter/packages · camera | Recording events broke the ==/hashCode contract |
|
| dart-lang/http | RetryClient threw when the retry check read the response body |
|
| dart-lang/core · args | Help-text separators ignored the configured line length | |
| dart-lang/tools · csslib | Wrong hex values for three named CSS colours | |
| plus_plugins · share_plus | Windows builds failed under C++20 | |
| plus_plugins · device_info_plus | Linux device info kept stray quotes from os-release on some distros | |
| carp-health-flutter · health | Android workout summaries were always empty | |
| bloc · replay_bloc | Undo history ignored a lowered history limit | |
| dio | ListFormat.tsv joined values with a literal \t instead of a tab |
|
| serverpod | The CLI planned a bogus rename cycle when two columns swapped names |
Python, Rust, Go and TypeScript projects
| Project | What I fixed | Status |
|---|---|---|
| PyAV | AudioFifo accepted frames with a different channel layout |
|
| PyAV | AudioFrame.planes could report more planes than the frame has |
|
| pdm | setup dropped the version from an earlier project file when a later one had none |
|
| PySceneDetect | The CSV cut-list row was unlabelled when no cut list was passed | |
| MoneyPrinterTurbo | The config error now explains how to fix a Docker bind-mounted config.toml that became a folder |
|
| dominate | attr() and dict attributes skipped the tag's attribute cleaning |
|
| minijinja | split(none, n) returned trailing whitespace |
|
| minijinja | The Go port's split(none, n) maxsplit handling now matches Rust |
|
| miller | fsec2hms and fsec2dhms lost the carry from rounded fractional seconds |
|
| croc | File sizes showed 1024.0 kB instead of 1.0 MB |
|
| dust | --only-dir mishandled duplicate top-level names |
|
| YouTube.js | The parser had no InlineSurvey, ExpandableSurveyResponse, RatingSurvey or RatingSurveyOption nodes |
|
| xerj | Autoindex skipped Dart extension and extension type declarations |
- Apr 2026 to now · Principal Software Engineer (Mobile), mPokket. I lead SkillZi, an AI-powered learning and rewards app for 100K+ users, with in-app purchases, referrals, SSL pinning and secure video streaming.
- Sep 2025 to Apr 2026 · Technical Architect, SEWB (via Cosmos Media). I took an AWS digital health platform from concept to MVP, with AI features and HealthKit, Google Fit, Fitbit and Samsung Health integrations.
- Jun 2022 to Sep 2025 · Senior Software Engineer, SoftDEL Systems. I worked on MSA Safety XS Connect (BLE hardware through native Java and Swift bridged to Flutter), the Lochinvar PWA and apps, KONE and Asset Vantage.
- Feb 2021 to Jun 2022 · Mobile Lead, Reliance Industries. I led the Flutter team for People First (HRMS), Sunstone (EdTech, 100K+ students) and Plus Pin Pharma, with Paytm, Stripe and Razorpay integrations.
- Mar 2018 to Jan 2021 · Software Engineer, Marvelous Tech Solutions. I built full-stack web and Flutter apps: EstreetMart, GastroCare, Edecofy and NRIbuddy.
B.Tech in Computer Science, JNTU Anantapur.
I mentor engineers and teach Flutter by building real apps, from the first widget to production architecture. The free material is all public: the handbook, the flashcards and the system design guide.
Mobile Flutter, Dart, Kotlin, Java, Swift, Android Studio
Backend and cloud Node.js, Python, FastAPI, PHP, Laravel, AWS, Firebase, MongoDB, MySQL
Also Bluetooth LE, HealthKit, Google Fit, Fitbit, BLoC, Riverpod, GetX, SSL pinning, Stripe, Razorpay, Paytm, UPI, PWA, CI/CD, Playwright, local LLMs (Ollama), Claude
If you'd like to talk about Flutter, Bluetooth devices or building small things well, say hello on LinkedIn or through chandrachaan.com.



