About this project

Restage enables server-driven UI for Flutter applications, allowing developers to build and deploy screens, paywalls, and onboarding flows without requiring a full app store release. It compiles existing Flutter widgets into render artifacts that can be pushed and published via a CLI tool. Key capabilities include: - Custom Design System: Uses the app's existing widgets and Theme.of(context) to ensure consistency across light/dark modes and rebrands. - Versatile UI Components: Supports full screens, specific components (like cards), and complex flows (onboarding, surveys). - Extensive Widget Catalog: Provides 116 built-in widgets across core, Material, and Cupertino libraries, with support for custom widgets via @RestageWidget. - Safety and Stability: Includes build-time compilation checks to prevent incompatible versions from reaching older clients and provides local fallback copies if network fetches fail. - Monetization Integration: Features a pluggable billing gateway with support for purchase/restore, promotional offers, and an optional RevenueCat adapter. - Flexible Deployment: Artifacts can be served from a custom backend or CDN, and the SDK supports offline operation. - Additional Integrations: Supports A2UI for AI-generated UI and Widgetbook for story generation and browsing.