Search categories, packages and repositories

Package detailsv0.6.0

parse_app_package

Parse app package

AndroidiOSmacOSWindowsLinux
30-day downloads
13.3K
Likes
1
Pub points
120

Install package

flutter pub add parse_app_package

Package Overview

Package selection guidance compiled from public package information, community data, and project usage.

A Flutter utility package that enables parsing of app package information from native platforms, including Android, iOS, macOS, Windows, and Linux. It provides a consistent interface to extract details such as version codes, build numbers, and package names across different operating systems. Designed for developers needing reliable access to app metadata during runtime or in diagnostic tools. The package is lightweight and integrates seamlessly with existing Flutter projects.

Use cases

  • Extracting app version details at runtime
  • Debugging app builds across platforms
  • Gathering package metadata for analytics
  • Validating app installation integrity
  • Supporting multi-platform app diagnostics

Key features

  • Cross-platform app metadata extraction
  • Simple API for version and package info
  • Supports Android, iOS, macOS, Windows, and Linux
  • Lightweight and dependency-free
  • Built-in error handling for platform-specific issues

Suitable for

  • Developers building cross-platform apps
  • Teams requiring consistent app metadata access
  • Apps needing runtime version checks
  • Diagnostic and logging utilities
  • CI/CD pipelines for app validation

Considerations

  • Requires native platform permissions on some OSes
  • Limited to basic package metadata (no deep manifest parsing)
  • Not suitable for complex manifest analysis
  • May require additional setup on non-Android/iOS platforms
  • No support for dynamic package updates

Original README

Original README snapshot from the linked source repository. Visit the repository for the latest content.

Fastforge

Fastforge formerly Flutter Distributor

pub version pub downloads melos All Contributors

Ship every app faster to your users — Build, package, and publish with one clear configuration. Target popular distribution formats and app stores while fitting naturally into your CI/CD pipeline.

[!WARNING] Rust Migration In Progress: The core of Fastforge is being rewritten in Rust to deliver better performance, a smaller install footprint, and zero runtime dependencies on the Dart SDK. The new implementation lives in the crates/ directory and is being developed in parallel with the existing Dart packages.

What this means for you:

  • The current Dart-based CLI (dart pub global activate fastforge) continues to work and receives bug fixes.
  • The Rust CLI will be released as a native binary — no Dart or Flutter SDK required to run it.
  • APIs and configuration formats are designed to remain compatible; any breaking changes will be clearly announced.
  • Contributions, feedback, and bug reports on the Rust implementation are very welcome — see the Contributing section.

English | 简体中文


Documentation

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
Supported Distribution Platforms

Installation

dart pub global activate fastforge

Windows users: After activation, ensure the pub cache bin directory is in your PATH:

  1. Open System Properties → Advanced → Environment Variables
  2. Under User variables, select Path → Edit
  3. Add %APPDATA%\Pub\Cache\bin and click OK
  4. Restart your terminal, then try fastforge --help

Quick Start

  1. Add distribute_options.yaml to your project root:
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.

  1. Release your app:
fastforge release --name dev

CLI Commands

Package Your App
fastforge package --platform=android --targets=aab,apk
Publish a Package
fastforge publish --path dist/your-app-1.0.0+1-android.apk --targets pgyer
Release (Package + Publish)
fastforge release --name dev

Examples

Fastforge includes several example projects to help you get started:

Advanced Usage

Environment Variables

Fastforge supports using environment variables in your configuration files. This is useful for sensitive information like API keys:

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:

jobs:
  build-and-release:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - 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 for more detailed CI/CD integration examples.

Who's Using It?

  • Biyi - A convenient translation and dictionary app.
  • Qianji - A purely bookkeeping app.
  • Airclap - 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

LiJianying
LiJianying

💻
Zero
Zero

💻
Kingkor Roy Tirtho
Kingkor Roy Tirtho

💻
LAIIIHZ
LAIIIHZ

💻
Tomohiro Ueki
Tomohiro Ueki

💻
Sven Gehring
Sven Gehring

💻
GargantuaX
GargantuaX

💻
Hiperion
Hiperion

💻
Reuben Turner
Reuben Turner

💻
Ankit Mahato
Ankit Mahato

📖
Tien Do Nam
Tien Do Nam

💻
zacks
zacks

💻
Mohammed  CHAHBOUN
Mohammed CHAHBOUN

💻
Prateek Sunal
Prateek Sunal

💻
lllgm
lllgm

💻
Arran Ubels
Arran Ubels

💻
Sherman Chu
Sherman Chu

💻 📖
DrSheppard
DrSheppard

📖
cranst0n
cranst0n

💻
duskygloom
duskygloom

💻
imnadev
imnadev

💻
jenken827
jenken827

💻
kecson
kecson

💻
zzqayy
zzqayy

💻
Add your contributions

License

MIT

Fastforge Studio

The Studio web client, local server, and shared packages live in this repository under the studio- package prefix. See the Studio development guide for setup and checks.

Agent Skills

Agent skills that teach Claude and other Agent-Skills-compatible harnesses how to use fastforge live in skills/. Install them with npx skills add fastforgedev/fastforge; see the skills guide for details.

Categories

Dependencies

Dependency list 4 items

  • archive^3.6.1
  • args^2.2.0
  • plist_parser^0.0.11
  • shell_executor^0.3.0

Source repository

Projects using this package

No data available yet.