Set up your computer
RapidMart has three Flutter apps, each built for Android and iOS from one codebase:
| App | Folder | For |
|---|---|---|
| Customer | apps/customer | Ordering, parcels, consultations, lab tests, wallet. |
| Seller | apps/seller | Stores: orders, products, earnings, in-store POS. |
| Rider | apps/delivery | Riders: jobs, navigation, cash, earnings. |
packages/ holds code the apps share. Keep apps/ and packages/ side by side, as in the
download — the apps find the packages by that relative path.
What you need
Section titled “What you need”| Version | Why | |
|---|---|---|
| Flutter | 3.38.10 | The version RapidMart is built and tested with. |
| Android Studio | Latest | Android SDK, emulator, signing tools. |
| Xcode (Mac only) | Latest | iOS builds. iOS apps can only be built on a Mac. |
| CocoaPods (Mac only) | Latest | iOS libraries. |
| Firebase CLI + FlutterFire | Latest | Connects the apps to your Firebase project. |
-
Install Flutter 3.38.10 — follow flutter.dev → Get started for your system. To keep this version alongside others, use FVM:
fvm install 3.38.10(the apps include a.fvmrcfor it). -
Install Android Studio, open it once, and in SDK Manager install the latest Android SDK and command-line tools. Then accept the licences:
Terminal window flutter doctor --android-licenses -
Mac only — Xcode and CocoaPods: install Xcode from the App Store, open it once, then:
Terminal window sudo xcode-select --switch /Applications/Xcode.app/Contents/Developersudo gem install cocoapods -
Check everything:
Terminal window flutter doctorFix anything marked ✗ before going on.
Run an app
Section titled “Run an app”-
Open a terminal in the app’s folder and fetch its libraries:
Terminal window cd apps/customerflutter pub get -
Set your server’s address in
lib/app_config.dart(Connect the apps to your server). -
Connect a phone (USB debugging on Android; trusted device on iPhone) or start an emulator or simulator, then:
Terminal window flutter run
The order to follow
Section titled “The order to follow”- Connect the apps to your server
- Rename & rebrand — name, app IDs, icons
- Firebase — sign-in and push
- Push notifications
- Google Maps (customer app)
- Build for Android and Build for iOS