Smart Farm Prediction is a cross-platform application designed to provide seamless user experiences on Android, iOS, web, and Windows platforms. Built using Flutter, it ensures consistent performance and user interfaces across all supported devices.
- Cross-Platform Support: Runs on Android, iOS, web, and Windows.
- Unified Codebase: A single Flutter codebase powers all platforms.
- Customizable Interface: Platform-specific code sections enable tailored user experiences.
- Modular Architecture: Cleanly organized directories for platform-specific development.
.
└── fc_edge24
├── android
│ └── app
│ └── src
│ └── main
│ └── kotlin
│ └── com
│ └── edgeai
│ └── fc_edge24
│ └── MainActivity.kt
├── ios
│ └── Runner
│ └── Base.lproj
│ ├── LaunchScreen.storyboard
│ └── Main.storyboard
├── web
│ └── index.html
└── windows
└── runner
├── flutter_window.cpp
├── main.cpp
├── utils.cpp
└── win32_window.cpp
- Flutter SDK installed.
- Android Studio or Xcode for mobile development.
- Node.js and npm for web development.
- Visual Studio for Windows development.
- Clone the repository:
git clone https://github.com/yourusername/fc_edge24.git cd fc_edge24
- Get Flutter dependencies:
flutter pub get
- Open the project in Android Studio.
- Connect an Android device or start an emulator.
- Run the application using:
flutter run -d android
- Open
ios/Runner.xcworkspace
in Xcode. - Select a simulator or connect an iOS device.
- Build and run the project using:
flutter run -d ios
- Ensure you have a web server or Flutter's web tool enabled.
- Run the application in the browser:
flutter run -d web
- Open the project in Visual Studio.
- Build the project using:
flutter run -d windows
The Android entry point is defined in MainActivity.kt
, which extends FlutterActivity
to integrate Flutter into the Android platform.
Storyboard files (LaunchScreen.storyboard
and Main.storyboard
) define the user interface for the iOS platform, providing a smooth transition into the Flutter app.
The web entry point is index.html
, which sets up the environment and links necessary resources for the Flutter web application.
The Windows entry point is main.cpp
, which initializes the Flutter engine and configures the application window.
- Fork the repository.
- Create a feature branch:
git checkout -b feature-name
- Commit your changes:
git commit -m "Add a new feature"
- Push to the branch:
git push origin feature-name
- Open a pull request.
- This work was supported by Institute of Information & communications Technology Planning & Evaluation (IITP) grant funded by the Korea government(MSIT) (No. 2021-0-00907, Development of Adaptive and Lightweight Edge-Collaborative Analysis Technology for Enabling Proactively Immediate Response and Rapid Learning).