SHOWROOM ↗ · ABOUT ↗ · STACK ↗ · CONTACT ↗
I'm Muhammad Saleh — a Mobile Developer (Flutter) based in Iran, focused on building Persian-first, RTL-native mobile apps that feel native, fast, and human.
I turn ideas into shippable Flutter apps: from concept and UI in Figma/XD → clean architecture with Bloc / GetX → Firebase / REST integration → polished release on Android, iOS & Web.
Ideas are cheap. Shipped apps that people actually use is the craft.
🔭 Currently exploring:
advanced state management (Bloc / GetX)·offline-first UX·Firebase & maps— building a portfolio of production-grade Flutter products.
If the image doesn't load yet, upload assets/how-i-build.png — a 4-step banner is included in this package for you to generate.
Each preview is an actual Flutter render — 4 projects now show real device captures (Watch Store • Pitza Mitza • Baxi • TechBlog). Tap the title to open the repository.. Tap the title to open the repository. Screenshots are real app captures (add your own to
docs/showroom/).
|
Persian wallet experience: onboarding, balance, transfer/swap, transaction history, missions & invitations. Product + Flutter RTL.
|
Luxury watch marketplace: catalog, search, cart, authentication with Bloc architecture and Persian locale. 3 real captures now live.
|
|
Food ordering UX: menu, carousel, categories, cart & checkout flow — optimized for Persian users. 7 real screens now live.
|
Ride-hailing & delivery prototype with live maps ( |
|
Persian tech blog: articles, categories, bookmarks, write/publish flow with rich HTML rendering. 6 real screens now live.
|
Clean weather forecast app — current, hourly & daily views. Lightweight, fast, ready for API integration.
|
Want the full grid on your personal site like Sajjad's? This README is ready to link to saleh.dev/projects/* when you have it.
Mobile: Flutter · Dart · Bloc (flutter_bloc) · GetX · Provider · GoRouter
Backend & Data: Dio · REST API · Firebase (Core / Analytics / Messaging / Crashlytics) · GetStorage · SharedPreferences
Maps & Media: flutter_map · flutter_osm_plugin · image_picker / image_cropper · carousel_slider
Design: Figma · Adobe XD · RTL / Persian Typography · Responsive Layouts
Foundations: C · C++ · Git · Clean Architecture
🧩 Architecture I use
lib/
├─ data/ → repositories, data sources, models
├─ screens/ → pages + bloc/cubit/controller per feature
├─ widgets/ → reusable UI
├─ utils/ → helpers, constants, shared prefs
├─ gen/ → generated assets
└─ route/ → GoRouter / GetX routing
- Feature-based layers, separation of data / domain / presentation
- State: Bloc for complex flows (Watch Store), GetX for rapid product delivery (Pitza, Baxi, TechBlog)
Real contribution activity, refreshed daily. The graph follows GitHub's visible contribution settings; private repository details are never exposed.
- Mobile Developer (Flutter) — 2022 → Present. Shipping Persian-first apps across e-commerce, food, mobility, and content.
- C / C++ Foundations — Games & algorithms (
4-in-row,Snake_Game) → strong DSA grounding before Flutter. - Product-minded builder — I care about RTL UX, empty states, loading & error handling — not just screens.
- Always learning: State management deep-dives, offline-first, animations.
Open to Flutter freelance & collaborations — especially Persian-market products.
Let's make it useful. Good apps start with a conversation.
Profile inspired by craft-driven builders. Built with Flutter 💙 · Last updated: Oct 2026





