EnsembleUI / ensemble

Build native apps 20x faster than Flutter, RN or any other tech
https://ensembleui.com/
BSD 3-Clause "New" or "Revised" License
121 stars 15 forks source link
cross-platform dart flutter low-code sdui server-driven-ui

Ensemble

Welcome to the Ensemble! This repository houses the Flutter runtime, various modules, and an example app called the Starter App that utilizes different packages. Ensemble allows you to build, publish, and iterate native and web apps seamlessly within your browser.

What is Ensemble?

Ensemble is a revolutionary platform that enables app development through a declarative language. Rather than traditional coding, you configure your app using this language, allowing for rapid development and deployment. Key features of Ensemble include:

Modules

This monorepo contains the following modules:

Getting Started

Links

Melos Integration

This monorepo is managed using Melos, a tool for managing Dart and Flutter monorepos. Below are some useful commands:

How to Contribute

To contribute a new widget or enhance an existing one in Ensemble, follow these steps:

  1. All Ensemble widgets can be found here.
  2. Run the Kitchen Sink app locally by visiting this link and use the appId as described above.
  3. Explore how each widget works and how the YAML is mapped to the Flutter widget.
  4. Create your own app and screens with your widget (or enhanced widget) in the studio. Ensure it works flawlessly.
  5. When ready, create a pull request, and our team will review and provide feedback.

Releasing a New Version

To release a new version of your monorepo, follow these steps below.

Update SDK version

To update the version of package:

melos version <package-name> <version>

e.g: melos version ensemble 1.0.3

To push this version on github with tag:

git push --follow-tags origin main

(optional) Create a Release on GitHub:

This project is tested with BrowserStack

By following these steps, you can ensure a smooth release process for your new version, including updating all necessary Git references in your Flutter projects.

Thank you for contributing to Ensemble! 🚀