A production-ready dart backend framework.
Angel3 originated from a fork of the archived Angel framework in support of Dart SDK 2.12.x or later. It is a full-stack backend framework in Dart that aims to streamline development by providing many common features out-of-the-box in a consistent manner. The codebase has been completely migrated and refactored to support null safety. One of the main goal is to enable developers to build both frontend and backend in dart language. Angel3 is designed as a collection of plugins that enable developers to pick and choose the parts needed for their projects. A series of starter templates are also provided for quick start and trial run with Angel3. Visit our website to learn more.
The available features in Angel3 includes:
See all of the available packages
for more information.
Angel3 packages are published under angel3_
prefix on pub.dev. These packages have passed all of their respective test suites before going live. The development work are currently focused on:
angel3_
prefix in sync with Dart SDK releases
The status of the project is as follows:
Branch: master
angel3_
prefix on pub.dev.For more details, checkout Project Status
angel3_
packages to require dart >= 3.0.0analyzer
6.x.xangel3_
packages to require dart >= 2.17.xanalyzer
5.x.xangel3_
packages to require dart >= 2.16.xanalyzer
3.x.xmelos
supporterror
for AngelHttpException
is no longer mandatoryDownload and install Dart
Clone one of the following starter projects:
Run the project in development mode (hot-reloaded is enabled on file changes).
dart --observe bin/dev.dart
Run the project in production mode (hot-reloaded is disabled).
dart bin/prod.dart
Run as docker. Edit and build the image with the provided Dockerfile
file.
Next, refer to the developer guide to learn more about Angel3 framework.
Download and install Dart
Install the Angel3 CLI:
dart pub global activate angel3_cli
On terminal, create a new project:
angel3 init hello
Run the project in development mode (hot-reloaded is enabled on file changes).
dart --observe bin/dev.dart
Run the project in production mode (hot-reloaded is disabled).
dart bin/prod.dart
Run as docker. Edit and build the image with the provided Dockerfile
file.
Next, refer to the developer guide to learn more about Angel3 framework.
Check out Migrating to Angel3
The performance benchmark can be found at TechEmpower Framework Benchmarks
The test cases are build using standard Angel3 ORM
template for PostgreSQL and MySQL database. The result are used for fine-tuning Angel3 framework with respect to other frameworks. The following test cases will be added in the upcoming update to the benchmark.
Please visit our User Guide and Examples for more detailed information on the available features of Angel3 framework.
Join us on Discord.
If you are interested in contributing to Angel3 framework please check out the Contribution Guide.
Fork angel
repository
Clone the project to local and create a new branch
git clone https://github.com/<your_repo_name>/angel.git
git checkout -b feature/<your_branch_name>
Download and install Dart 3
Install melos
6.1
dart pub global activate melos
Run melos exec "dart pub upgrade"
to update all the packages
Make changes to the packages
If you like this project and interested in supporting its development work, you are welcome to make a donation via the following links.