The Okuna Mobile App: Your Guide to Getting Started

Aug 5, 2024 | Programming

Welcome to the world of the Okuna mobile app! If you’re ready to dive into app development using this innovative platform, you’re in the right place. This article will walk you through everything you need to know to get started, troubleshoot common issues, and contribute to this exciting project.

Table of Contents

Requirements

Project Overview

The Okuna mobile app is a vibrant Flutter application that intersects with the robust okuna-api backend. Think of the app as a bridge connecting your device and the data stored in the cloud!

Contributing

Everyone can contribute to the crafts of Okuna development, just find the role that best suits your skills and jump in! Here are some examples of contributions we appreciate:

  • Code patches
  • Bug reports
  • Patch reviews
  • Translations
  • UI enhancements

Code of Conduct

Please read and adhere to our Code of Conduct.

License

All contributions accepted are licensed under MIT or any later version. Please ensure your contributions comply with these licensing terms by reading our license documentation.

Other Issues

Have questions? We’re available almost around the clock in the Okuna Slack channel. Join us!

Git Commit Message Conventions

Help us maintain a clean repository history! We use gitmoji for our git message conventions.

Getting Started

Ready to create something amazing? Follow these steps:

1. Install the okuna-api backend

Check out the instructions here to get the server up and running.

2. Install Flutter

Go to the Flutter Install website and follow the installation guidelines. Once complete, verify everything with the command: flutter doctor.

3. Clone the Repository

sh
git clone git@github.com:OkunaOrg/okuna-app.git
cd okuna-app

4. Create the env.json File

We utilize a .env.json file for environment variables like the backend endpoint. Create a copy of .sample.env.json and rename it to .env.json:

bash
cp .sample.env.json .env.json

Edit the .env.json file with your settings:

  • API_URL: Mandatory; fill in the URL of the okuna-api backend.
  • MAGIC_HEADER_NAME: Optional; specify a custom header name.
  • MAGIC_HEADER_VALUE: Optional; specify the header value.

5. Configure a Signing Key (Android only step)

To create a keystore, run the command below. If you already have one, skip to the next step:

bash
keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key

Then, create a file named key.properties in the app directory that references your keystore:

properties
storePassword=password from previous step
keyPassword=password from previous step
keyAlias=your_key_alias
keystoreFile=location_of_key_store_file

6. Open the iOS/Android Simulator or Connect a Device

Follow these steps to launch either the iOS or Android simulator:

  • iOS Simulator: Open Xcode and navigate to Developer Tool – iOS Simulator.
  • Android Simulator: Launch Android Studio, select Tools – AVD Manager. Create a virtual device if necessary.

7. Run the Flutter App

Use the following commands based on your environment:

  • Development Flavor:
    bash
    flutter run --flavor development
    
  • Production Flavor:
    bash
    flutter run --flavor production
    

8. Build for Production

  • To build an Android APK:
  • bash
    flutter build appbundle --target-platform android-arm,android-arm64
    
  • To build an iOS archive:
  • bash
    flutter build ios
    

9. Troubleshooting

If you encounter issues, don’t hesitate to reach out for help. We recommend checking the following:

  • Your Flutter and Okuna setup are correctly configured.
  • You’ve followed the installation steps closely.
  • The backend server is running correctly.

For more insights, updates, or to collaborate on AI development projects, stay connected with fxis.ai.

Conclusion

At fxis.ai, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.

Happy coding!

Stay Informed with the Newest F(x) Insights and Blogs

Tech News and Blog Highlights, Straight to Your Inbox