Client
Configuration and compilation of the client side (Flutter)
First, we will proceed with the necessary updates for both the Android and iOS apps.
Android
To begin, we need to create release keystores for signing the APKs or aab bundles. You can use the command provided below, replacing [key_alias_name] with the desired alias name of your choice:
keytool -genkey -v -keystore keystore.jks -alias [your_alias_name] -keyalg RSA -keysize 2048 -validity 10000
Ensure you have copied this file to the driver's and rider's frontend folders. Then, open the key.properties
file located in the android
folder and enter the alias name and password you have chosen for the keystore in the appropriate fields.
Now, execute the following command to display the signature of both your system's debug keystore and the release keystore. Take a copy of the SHA-1 and SHA-256 values, as we will need them later.
../gradlew signingreport
Next, open the build.gradle
file located in the app folder. Inside this file, you will find the line that specifies the applicationId
. Update this line to match the application identifier of your own brand.
android {
compileSdkVersion 33
sourceSets {
main.java.srcDirs += 'src/main/kotlin'
}
defaultConfig {
// TODO: Specify your own unique Application ID
- applicationId com.ridy.taxi.rider
+ applicationId com.yourCompanyName.taxi.driver
iOS
Next, we will do the same for iOS apps. Please open the Runner.xcworkspace
in either rider-frontend/driver-frontend's ios folder. Next click on the Runner project in the left panel so the project settings would appear. Then under the Signing and Capabilities tab, you can change the bundle identifier:

Firebase
You can now head to the Firebase console and create a Flutter Firebase app on the project created during the first Firebase setup.

During the flutter application creation, you will be instructed on how to install Firebase CLI
& FlutterFire
tool:

Once you have installed those tools, Firebase will prompt you to connect your apps to the Firebase project. This process is seamless and can be accomplished by executing a command similar to the one provided below by Firebase:

f
When you run this command, you will be presented with the option to configure which apps you want to connect with Firebase. You can uncheck macOS since ridy does not support macOS client officially.
Here's a clear and concise documentation section you can use:
đ§ Configure API Base URL
Before running the Rider and Driver apps, you must set the correct API endpoints in the environment files.
Step 1: Locate the .env
files
.env
filesEach of the following folders contains two environment files:
apps/rider-frontend
apps/driver-frontend
Inside each, you'll find:
.env.dev
.env.prod
Step 2: Set the BASE_URL
variable
BASE_URL
variableEdit both .env.dev
and .env.prod
files in each app.
Set the BASE_URL
variable as follows:
For the Rider app (
apps/rider-frontend
):BASE_URL=http://your-server-ip/rider-api/
For the Driver app (
apps/driver-frontend
):BASE_URL=http://your-server-ip/driver-api/
đĄ You can find your
your-server-ip
by taking the URL you used to access the admin panel and removing the/admin
suffix.
For example, if you accessed the admin panel at:
http://127.0.0.1/admin
Then:
Rider BASE_URL â
http://127.0.0.1/rider-api/
Driver BASE_URL â
http://127.0.0.1/driver-api/
Make sure each URL ends with a trailing slash (/
) to avoid request issues.
Let me know if you want a table or script snippet to automatically fill in these values.
With the above steps completed, you can now compile either the driver or rider app using Flutter's standard build commands.
// Build with debug keystore
flutter build apk
flutter build appbundle
// Build with release keystore
flutter build apk --release
flutter build appbundle --release
Last updated