Features

FAST-CLI provides a set of powerful features to streamline your App Inventor extension development workflow.

No Class Annotations
Write extensions with no class-level annotations except @DesignerComponent, simplifying your code and enabling multi-component extensions.
Kotlin Support
Dynamic Kotlin Compiler allows seamless support for both Java and Kotlin languages for extension development.
Documentation Generator
Automatically generates blocks as PNG for each builder and comprehensive documentation in Markdown format.
Code Optimization
Built-in ProGuard and R8 shrinker support for smaller and optimized extensions with up-to-date ProGuard library (7.7.0).
Manifest File Support
Use a standard AndroidManifest.xml file instead of writing Java annotations to define Android manifest elements.
Project Migration
Easily migrate Rush, extension-template & AI2 source based projects to FAST within seconds.
Simple Commands
Streamlined CLI with 7 powerful commands (create, build, sync, clean, migrate, jetify, upgrade) to manage the entire development lifecycle.
Helper Blocks
Integration of new red drop-down helper blocks for enhanced UX in the App Inventor environment.
Gradle Dependency
Premium feature: Gradle dependency resolver for easy integration of external libraries into your extensions.
Maven Dependency
Premium feature: Maven dependency resolver provides an alternative way to manage your extension dependencies.
JDK8/JRE8 Support
Premium feature: Bundled JDK8/JRE8 support ensures compatibility with the latest Java features.
AAR Libraries
Premium feature: Attach AAR libraries to your extensions for more powerful integrations.

What Makes FAST Different?

If you examine the generated Java file for your extension, you'll notice that there are no class-level annotations except @DesignerComponent. Writing the @DesignerComponent annotation is mandatory to declare the component class. In this way, you'll be able to use multi-component within a single extension.

Multi-Component Extensions

Unlike traditional App Inventor extension development approaches, FAST allows you to include multiple components within a single extension. This is particularly useful for creating component families or related functionality that should be packaged together.

Optimized Extension Size

FAST generates smaller extension files compared to traditional methods. This is achieved through:

  • Code optimization with ProGuard or R8 shrinker
  • Removal of unnecessary annotations from the compiled code
  • Ability to filter AI2 provided classes to reduce the AIX size
  • Hard zip compression options for even smaller file sizes

Modern Development Experience

FAST brings modern development practices to App Inventor extension development:

  • Java 8 support, including lambda expressions
  • Full Kotlin language support with dynamic compiler
  • Code suggestions on VSCode, Eclipse, IntelliJ IDEA & Android Studio
  • Standard config file approach with fast.yml
  • Familiar AndroidManifest.xml configuration

Supported Operating Systems

FAST-CLI is designed to be cross-platform and supports the following operating systems:

  • Windows
  • Linux
  • MacOS
  • Android (via Termux)

This cross-platform support means you can develop App Inventor extensions on virtually any device, including directly on Android smartphones using Termux.