SpaceX is an open-source app that provides information of Flight Launches of SpaceX built with Flutter
The app is currently in the stage of development and only displays launches and launch details with rocket and site information. This app uses API from https://github.com/r-spacex/SpaceX-API.
The project uses clean architecture and test driven development for development process.
brew install lcov
As we are using macOS for development, installation of lcov is different on other operating system. please visit https://github.com/linux-test-project/lcov for more info on lcov.
sudo gem install cocoapods
As we are using XCode 15 for development, it requires latest version of cocoapods to run app on ios simulator please make sure you system has version
1.13.0
of cocoapods
for more on flutter please visit https://flutter.dev
- flutter_bloc as state management
- auto_route as routing
- get_it as dependency injection
- injectable as code generation for get_it
- dio for http requests
- freezed and json_serializable for model classes and states
- fpdart for functional programming
- cached_network_image for render network images
First, clone the project with git clone
command or download the zip file
git clone https://github.com/kishormainali/spacex.git
Run, flutter pub get
to install dependencies
flutter pub get
Run, build_runner
to generate code for models, dependency injections and bloc states
dart run build_runner build -d
- Download and Install
- To run project locally you can use IDE's run button or you can run using
flutter run
command.
flutter run
- Download APK
- Open using android file manager or tap on downloaded file
- If install is blocked from unknown sources, Tap allow install from unknown sources.
- If popup is not displayed during install time goto settings > apps > Chrome > check install from unknown sources
Generate coverage/lcov.info
file using
flutter test --coverage
Generate HTML report using
genhtml coverage/lcov.info -o coverage/html
Open the report using
open coverage/html/index.html
if you want to run test without coverage run flutter test
on project root
flutter test
![]() |
![]() |
---|
As we are using full_text_search for searching functionality, sometimes it will search using launch name instead of rocket name.
Author and app is not affiliated, associated, authorized, endorsed by, or in any way officially connected with Space Exploration Technologies Corp (SpaceX), or any of its subsidiaries or its affiliates. The names SpaceX as well as related names, marks, emblems and images are registered trademarks of their respective owners. This is not an official SpaceX app.