scaffold_ui 2.0.0
scaffold_ui: ^2.0.0 copied to clipboard
The fastest way to scaffold services in your Nylo project! Auth & IAP integrations for Supabase, Firebase, Laravel, RevenueCat, Superwall and more.
Scaffold UI #
Fastest way to add authentication or in-app purchases to your Nylo Flutter application.
Overview #
Scaffold UI is a powerful CLI tool that helps Flutter developers quickly integrate common UI patterns into their Nylo projects. Instead of spending hours building authentication flows or in-app purchase screens from scratch, you can have a complete, customizable implementation in minutes.
Features #
🔐 Authentication UI #
Generate a complete authentication flow with a single command:
dart run scaffold_ui:main auth
Choose from three authentication backends:
- Supabase - Full authentication service with ready-to-use UI components
- Laravel - Complete integration with Laravel Sanctum, including API services
- Firebase - Integration with Firebase Auth and Firestore with ready-to-use UI components
- Basic - Clean authentication UI templates for custom implementation
💳 In-App Purchases (iOS & Android) #
Add subscription flows and paywalls with:
dart run scaffold_ui:main iap
Currently supports:
- RevenueCat - Complete integration with SDK and pre-built UI components for subscription management
- Superwall - Remote-configurable paywalls with the
superwallkit_flutterSDK; the CLI also patchesAndroidManifest.xmlfor you
IOS Prerequisites
- Open the
ios/Runner.xcworkspacefile in Xcode - Signing & Capabilities > Add the
In-App Purchasecapability - For Superwall: ensure your iOS deployment target is
14.0or higher (platform :ios, '14.0'inios/Podfile)
Android Prerequisites
- For Superwall: set
minSdkVersion 26(or higher) inandroid/app/build.gradle
Installation #
Add scaffold_ui to your Flutter project:
dart pub add scaffold_ui
This will add the following to your pubspec.yaml:
dependencies:
scaffold_ui: ^2.0.0
Upgrading from 1.x? 2.0.0 targets Nylo v7 (
nylo_framework: ^7.1.16+) and requires Dart^3.10.7. See the CHANGELOG for breaking changes.
Setup Guides #
Supabase Authentication #
- Create a Supabase account and project at supabase.com
- Run the auth scaffold command:
dart run scaffold_ui:main auth - Select
supabasewhen prompted - Enter your Supabase URL and Anon Key
- The tool will automatically:
- Configure Supabase authentication
- Generate UI components
- Set up necessary services
Laravel Authentication #
Prerequisites:
- A Laravel project with Sanctum configured
- Your User model must use the
HasApiTokenstrait
-
Install the Laravel package:
composer require nylo/laravel-nylo-auth -
Publish the package assets:
php artisan vendor:publish --provider="Nylo\LaravelNyloAuth\LaravelNyloAuthServiceProvider" -
Run the auth scaffold command:
dart run scaffold_ui:main auth -
Select
laraveland enter your project URL -
For additional Laravel configuration options, visit the laravel-nylo-auth repository
Firebase Authentication #
- Create a Firebase account and project at firebase.google.com
- Run the auth scaffold command:
dart run scaffold_ui:main auth - Select
firebasewhen prompted - This will:
- Install the Firebase SDK
- Generate UI components
- Set up necessary services
- Install
flutterfirevia https://firebase.google.com/docs/flutter/setup - Run
flutterfire configureto complete the setup
Basic Authentication #
For custom authentication implementations:
- Run
dart run scaffold_ui:main auth - Select
basic - The tool will generate UI components that you can customize with your authentication logic
RevenueCat In-App Purchases #
- Create an account at revenuecat.com and grab your Apple/Android API keys
- Run the IAP scaffold command:
dart run scaffold_ui:main iap - Select
RevenueCatand paste each platform's API key (typento skip a platform) - To show the paywall:
routeTo(PaywallPage.path)
Superwall In-App Purchases #
- Create an account at superwall.com and grab your Apple/Android API keys
- Run the IAP scaffold command:
dart run scaffold_ui:main iap - Select
Superwalland paste each platform's API key (typento skip a platform) - The CLI will generate
paywall_page.dart,superwall_provider.dart, and — if you supplied an Android key — registerSuperwallPaywallActivityinsideandroid/app/src/main/AndroidManifest.xml - Customise the placement name (default
campaign_trigger) inlib/resources/pages/paywall_page.dartto match the placement you configure in the Superwall dashboard - To trigger the paywall:
routeTo(PaywallPage.path)
Changelog #
See CHANGELOG for recent changes.
License #
This project is licensed under the MIT License - see the License file for details.
