# fastforge **Repository Path**: HesenjanJava/fastforge ## Basic Information - **Project Name**: fastforge - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-10-16 - **Last Updated**: 2025-10-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # fastforge [![pub version][pub-image]][pub-url] [![pub downloads][pub-dm-image]][pub-dm-url] [![][discord-image]][discord-url] [](https://github.com/invertase/melos) [![All Contributors][all-contributors-image]](#contributors) [pub-image]: https://img.shields.io/pub/v/fastforge.svg?style=flat-square [pub-url]: https://pub.dev/packages/fastforge [pub-dm-image]: https://img.shields.io/pub/dm/fastforge.svg [pub-dm-url]: https://pub.dev/packages/fastforge/score [discord-image]: https://img.shields.io/discord/884679008049037342.svg?style=flat-square [discord-url]: https://discord.gg/zPa6EZ2jqb [all-contributors-image]: https://img.shields.io/github/all-contributors/fastforgedev/fastforge?color=ee8449&style=flat-square The ultimate all-in-one [Flutter](https://flutter.dev) application packaging and distribution tool, providing a seamless solution for all your distribution needs. > **Name Change Notice:** ~~Flutter Distributor~~ has been renamed to Fastforge. If you were previously using ~~Flutter Distributor~~, please note that all functionality remains the same, but the package name, commands, and documentation have been updated to reflect this change. --- English | [įŽäŊ䏿](./README-ZH.md) --- ## Documentation Complete documentation is available at [fastforge.dev](https://fastforge.dev/). ## Key Features - đ One-Click Build: Support for Android APK/AAB, iOS IPA, OpenHarmony HAP/APP and more - đĻ Multi-Platform Release: Support for App Store, Google Play, Firebase, Pgyer, fir.im, etc. - đ CI/CD Integration: Perfect integration with GitHub Actions, GitLab CI, and more - đ Flexible Configuration: Support for multiple environments, flavors, and custom build arguments ### Supported Package Formats - **Android**: [AAB](https://fastforge.dev/en/makers/aab), [APK](https://fastforge.dev/en/makers/apk) - **iOS**: [IPA](https://fastforge.dev/en/makers/ipa) - **OpenHarmony**: [HAP](https://fastforge.dev/en/makers/hap), [APP](https://fastforge.dev/en/makers/app) - **Linux**: [AppImage](https://fastforge.dev/en/makers/appimage), [DEB](https://fastforge.dev/en/makers/deb), [RPM](https://fastforge.dev/en/makers/rpm), Pacman - **macOS**: [DMG](https://fastforge.dev/en/makers/dmg), [PKG](https://fastforge.dev/en/makers/pkg) - **Windows**: [EXE](https://fastforge.dev/en/makers/exe), [MSIX](https://fastforge.dev/en/makers/msix) - **Universal**: [ZIP](https://fastforge.dev/en/makers/zip) - More formats coming soon... ### Supported Distribution Platforms - [App Store](https://fastforge.dev/en/publishers/appstore) - [Firebase](https://fastforge.dev/en/publishers/firebase) - [Firebase Hosting](https://fastforge.dev/en/publishers/firebase-hosting) - [FIR](https://fastforge.dev/en/publishers/fir) - [GitHub Releases](https://fastforge.dev/en/publishers/github) - [PGYER](https://fastforge.dev/en/publishers/pgyer) - [Play Store](https://fastforge.dev/en/publishers/playstore) - [Qiniu](https://fastforge.dev/en/publishers/qiniu) - [Vercel](https://fastforge.dev/en/publishers/vercel) - More platforms coming soon... ## Installation ```bash dart pub global activate fastforge ``` ## Quick Start 1. Add `distribute_options.yaml` to your project root: ```yaml variables: PGYER_API_KEY: "your api key" # Replace with your own API keys output: dist/ releases: - name: dev jobs: # Build and publish APK to PGYER - name: release-dev-android package: platform: android target: apk build_args: target-platform: android-arm,android-arm64 dart-define: APP_ENV: dev publish_to: pgyer # Build and publish IPA to PGYER - name: release-dev-ios package: platform: ios target: ipa build_args: export-options-plist: ios/dev_ExportOptions.plist dart-define: APP_ENV: dev publish_to: pgyer ``` > **Note:** `build_args` are parameters supported by the `flutter build` command. Modify them according to your project requirements. 2. Release your app: ```bash fastforge release --name dev ``` ## CLI Commands ### Package Your App ```bash fastforge package --platform=android --targets=aab,apk ``` ### Publish a Package ```bash fastforge publish --path dist/your-app-1.0.0+1-android.apk --targets pgyer ``` ### Release (Package + Publish) ```bash fastforge release --name dev ``` ## Examples Fastforge includes several example projects to help you get started: - **[hello_world](https://github.com/fastforgedev/fastforge/tree/main/examples/hello_world)** - Basic example demonstrating the core functionality. - **[multiple_flavors](https://github.com/fastforgedev/fastforge/tree/main/examples/multiple_flavors)** - Example showing how to configure multiple application flavors. - **[custom_binary_name](https://github.com/fastforgedev/fastforge/tree/main/examples/custom_binary_name)** - Example of how to customize binary output names. ## Advanced Usage ### Environment Variables Fastforge supports using environment variables in your configuration files. This is useful for sensitive information like API keys: ```yaml variables: API_KEY: ${PGYER_API_KEY} # Uses the PGYER_API_KEY environment variable ``` ### CI/CD Integration Fastforge works well in CI/CD environments. For example, with GitHub Actions: ```yaml jobs: build-and-release: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - uses: subosito/flutter-action@v2 - name: Install Fastforge run: dart pub global activate fastforge - name: Build and release run: fastforge release --name production env: API_KEY: ${{ secrets.API_KEY }} ``` Check the [documentation](https://fastforge.dev/) for more detailed CI/CD integration examples. ## Who's Using It? - [Biyi](https://biyidev.com/) - A convenient translation and dictionary app. - [Qianji](https://qianjiapp.com/) - A purely bookkeeping app. - [Airclap](https://airclap.app/) - Send any file to any device. cross platform, ultra fast and easy to use. ## Contributing Contributions are welcome! If you'd like to help improve Fastforge: 1. Fork the repository 2. Create your feature branch (`git checkout -b feature/amazing-feature`) 3. Commit your changes (`git commit -m 'Add some amazing feature'`) 4. Push to the branch (`git push origin feature/amazing-feature`) 5. Open a Pull Request Please make sure to update tests as appropriate and follow the existing code style. ## Contributors