The Protevus Platform: Unified Full-Stack Development https://protevus.com
Find a file
thomashii@dukefirehawk.com 19e37b330e Updated README
2021-05-01 12:53:29 +08:00
.github Create FUNDING.yml 2019-05-29 03:06:49 -04:00
.vscode Updated dart requirements to 2.10 2021-02-14 13:22:25 +08:00
packages Fixed pub_sub tests errors 2021-05-01 08:44:20 +08:00
tool add move_repos script 2020-02-16 14:28:17 -05:00
.gitignore Upgraded package cli 2021-03-06 19:56:49 +08:00
CHANGELOG.md Updated README 2021-05-01 09:34:16 +08:00
LICENSE :) 2016-04-21 22:56:21 -04:00
README.md Updated README 2021-05-01 12:53:29 +08:00
requirements.txt add move_repos script 2020-02-16 14:28:17 -05:00
TODO.md Updated dart requirements to 2.10 2021-02-14 13:22:25 +08:00

The Angel Framework

Gitter Pub Build status License

A polished, production-ready backend framework in Dart.


About

Angel is a full-stack Web framework in Dart. It aims to streamline development by providing many common features out-of-the-box in a consistent manner.

With features like the following, Angel is the all-in-one framework you should choose to build your next project:

  • GraphQL Support
  • PostgreSQL ORM
  • Dependency Injection
  • Static File Handling
  • And much more...

See all the packages in the packages/ directory.

IMPORTANT NOTES

This is a port of Angel Framework to work with Dart SDK 2.12.x and above. Dart SDK 2.12.x and below are not supported.

Branch: master

  • Same as sdk-2.12.x branch

Branch: sdk-2.12.x

Branch: sdk-2.12.x_nnbd

Branch: sdk-2.10.x

  • Required Dart SDK: ">=2.10.0 <2.12.0"
  • NNBD support: No
  • Status: Retired
  • Notes: Not all packages are fully tested. This branch is the baseline used in migrating the framework to support Dart SDK 2.12.x and beyond. It may still work with Dart SDK 2.10.x but no longer maintained. Do not work with Dart SDK < 2.10.x.

Testing Angel Framework in NNBD mode

Creating new project

  1. Clone https://github.com/dukefirehawk/boilerplates/tree/basic-sdk-2.12.x_nnbd project.

Migrating an existing project to Angel NNBD

  1. WARNING. Backup your existing code first as the following migration process cannot be reversed.
  2. Run dart pub outdated --mode=null-safety. Make sure all the packages besides "angel_*" are upgradable.
  3. Update all "angel_*" packages with dependencies in https://github.com/dukefirehawk/boilerplates/tree/basic-sdk-2.12.x_nnbd/pubspec.yaml file. Refer to WIKI on the migrated Angel NNBD packages.
  4. Run dart pub upgrade --null-safety.
  5. Run dart migrate to perform the migration.
  6. Fix and resolve NNDB related warnings and errors.

Installation & Setup

Once you have Dart installed, bootstrapping a project is as simple as running a few shell commands:

Install the Angel CLI:

pub global activate --source git https://github.com/dukefirehawk/cli.git

Bootstrap a project:

angel init hello

You can even have your server run and be hot-reloaded on file changes:

dart --observe bin/dev.dart

(For CLI development only)Install Angel CLI

pub global activate --source path ./packages/cli

Next, check out the detailed documentation to learn to flesh out your project.

Examples and Documentation

Visit the documentation for dozens of guides and resources, including video tutorials, to get up and running as quickly as possible with Angel.

Examples and complete projects can be found here.

You can also view the API Documentation.

There is also an Awesome Angel 🔥 list.

Contributing

Interested in contributing to Angel? Start by reading the contribution guide here.