dartness_server 0.4.3-alpha dartness_server: ^0.4.3-alpha copied to clipboard
Dartness is a framework for building efficient, scalable dart server-side applications. It provides an easy and quick way to develop modern standalone server.
Introduction #
Dartness is a dart framework for building efficient and scalable server-side applications.
Description #
Dartness is a framework for building efficient, scalable dart server-side applications. It provides an easy and quick way to develop modern standalone server.
Under the hood, Dartness makes use of shelf.
Inspired by Spring Boot and Nest frameworks
Goals #
The following goals are the main objectives that Dartness needs to provide and why it was designed for:
- ๐ Full stack integration with flutter or other dart front end frameworks
- ๐คนโโ๏ธ๐คนโโ๏ธ Easy and understandable for people coming from other kind of technology as Spring Boot and NestJS
- โ Simplicity, it should be easy to know why and how to use every functionality
- ๐จโ๐ป๐ฉโ๐ป Community empowered, where the community should be able to understand and maintain the dartness project by their own
Examples #
You can find different examples if you prefer to understand the code by yourself in the /examples folder.
Requisites #
Install Dart SDK version >=2.17.0
$ dart --version
Dart SDK version: 2.17.3 (stable)
Docs and more #
You can check the documentation at dartness docs
Creating a new project #
$ dart create -t console your_project_name
- Add dartness into the pubspec.yaml
dependencies:
dartness_server: ^0.4.3-alpha
dev_dependencies:
build_runner: ^2.2.0
dartness_generator: ^0.1.0-alpha
- Create the file in "bin/main.dart"
void main() async {
final app = Dartness(
port: 3000,
);
await app.create();
}
- Run the server
$ dart run bin/main.dart
Server listening on port 3000
Example #
You can run the example with the Dart SDK like this:
$ dart run example/main.dart
Server listening on port 3000
TODO #
- HTTP
- Controllers
Bind annotationsHeaderHeadersBodyParamQuery
MiddlewareInterceptor- Websockets
- Controllers
- Exceptions
Exception Handler
- Security
- Roles
- CORS
- Dependency Injection
- Injectable
- Scheduling
- Annotation
- Database
- ORM
- Repository
- Testing
- CLI