The Protevus Platform: Unified Full-Stack Development https://protevus.com
Find a file
2022-01-11 17:53:14 +08:00
.github Updated action 2022-01-08 15:49:43 +08:00
.vscode Updated validate 2021-07-09 13:39:39 +08:00
packages fix multi order by error 2022-01-11 17:53:14 +08:00
tool Updated ORM Postresql 2021-12-30 10:07:04 +08:00
.gitignore Fixed framework failed test cases 2022-01-08 13:00:36 +08:00
AUTHORS.md Updated README 2021-05-16 16:07:47 +08:00
CHANGELOG.md Updated change log 2021-09-14 13:40:42 +08:00
CONTRIBUTING.md Updated cache 2021-06-26 18:02:41 +08:00
LICENSE Updated linter to package:lints 2021-09-25 14:32:32 +08:00
logo.png Updated logo 2021-05-16 17:41:31 +08:00
logo3.png Updated logo 2021-05-16 17:41:31 +08:00
logo3.xcf Updated logo 2021-05-16 17:41:31 +08:00
README.md Updated README 2022-01-08 16:16:50 +08:00
TODO.md Updated README 2022-01-08 16:16:50 +08:00

Angel3 Framework

Angel3 Framework

Pub Version (including pre-releases) Null Safety Gitter License

A polished, production-ready backend framework in Dart with NNBD support.


About

Angel3 is a fork of the original Angel framework to support NNBD in Dart SDK 2.12.x and later. It is a full-stack Web framework in Dart that aims to streamline development by providing many common features out-of-the-box in a consistent manner. One of the main goal is to enable developers to build both frontend and backend in the same language, Dart. Angel3 framework 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 framework. Visit our website to learn more.

The availabe features in Angel3 includes:

  • Static File Handling
  • Basic Authentication
  • PostgreSQL ORM
  • GraphQL
  • And much more...

See all the available packages for more information.

Important Notes

The core Angel Framework migration to Angel3 Framework has completed and published under angel3_ prefix on pub.dev. The migrated packages have passed all the test cases. The development work will now move onto the next phase which is to refactor and to improve on the features for better development and deployment experience.

The status of the code base is as follows:

Branch: master

  • Dart version : 2.12.x and above.
  • Publish : Yes. Refer to packages with angel3_ prefix on pub.dev.
  • Null Safety : Yes
  • Status : Production
  • Notes : Use this branch for all PR submission

For more details, checkout Project Status

Installation and Setup

Create a new project by cloning from boilerplate templates

  1. Download and install Dart

  2. Clone one of the following starter projects:

  3. Run the project in development mode (hot-reloaded is enabled on file changes).

    dart --observe bin/dev.dart
    
  4. Run the project in production mode (hot-reloaded is disabled).

    dart bin/prod.dart
    
  5. Run as docker. Edit and build the image with the provided Dockerfile file.

  6. Next, refer to the developer guide to learn more about Angel3 framework.

Create a new project with Angel3 CLI

  1. Download and install Dart

  2. Install the Angel3 CLI:

    dart pub global activate angel3_cli
    
  3. On terminal, create a new project:

    angel3 init hello
    
  4. Run the project in development mode (hot-reloaded is enabled on file changes).

    dart --observe bin/dev.dart
    
  5. Run the project in production mode (hot-reloaded is disabled).

    dart bin/prod.dart
    
  6. Run as docker. Edit and build the image with the provided Dockerfile file.

  7. Next, refer to the developer guide to learn more about Angel3 framework.

Migrating from Angel to Angel3

Check out Migrating to Angel3

Performance Benchmark

The performance benchmark can be found at

TechEmpower Framework Benchmarks

The test cases are build using standard Angel3 ORM template. This result will be used for fine-tuning Angel3 framework. The following test cases will be progressively added in the upcoming update to benchmark.

  1. Angel3 with MongoDB
  2. Angel3 with MySQL ORM
  3. Cached queries

Examples and Documentation

Visit the User Guide for dozens of guides and resources, including video tutorials, to get up and running as quickly as possible with Angel3 framework.

Examples and complete projects can be found here.

You can also view the Angel3 API.

Contributing

Interested in contributing to Angel3? See the contribution guide here.