0 purchases
dchisel
DChisel Dart Framework #
DChisel is simple Dart Framework for creating REST API
Features #
Custom host server and port
GET, POST, PUT, DELETE, PATCH Routes
ORM CRUD to PostgreSQL
ORM CRUD to MySQL
Global Middleware
Specific Route Middleware
Auth
Base Response Ok & Forbidden
Header CORS
Base64 decode to File
Hotreload
Usage #
To add the dchisel to your Dart application read the install instructions.
Host Server
Default host is "localhost" and port 8000
import 'package:dchisel/dchisel.dart';
Future<void> main(List<String> arguments) async {
DRoute route() {
var droute = DRoute();
droute.get('/', (Request req) async => resOk("Hello, DChisel"));
return droute;
}
DChisel().serve(getroutes: route());
}
copied to clipboard
If you want to change the host to 0.0.0.0 and port to 5555 you can use :
DChisel().serve(getroutes: route(), serverHost: '0.0.0.0', serverPort: 5555);
copied to clipboard
GET Route
droute.get('/hello', (Request request) {
return 'Hello, World';
});
copied to clipboard
GET with param you can use :
droute.get('/getparam/<name>', (Request request, String name) {
return 'Hello, $name';
});
copied to clipboard
POST Route
droute.post('/hello', (Request request) async {
return 'Hello, World';
});
copied to clipboard
If you want to get Body value from your POST request, use :
var body = await request.body.asJson;
copied to clipboard
If you want to get Header value from your POST request, use :
var headers = await request.headers;
copied to clipboard
PUT Route
droute.put('/hello/<name>', (Request request, String name) async {
return 'Hello, $name';
});
copied to clipboard
PUT also can get Header and Body request
var headers = await request.headers;
var body = await request.body.asJson;
copied to clipboard
DELETE Route
droute.delete('/hello/<name>', (Request request, String name) async {
return 'Hello, $name';
});
copied to clipboard
Dchisel ORM #
For now, DChisel only support PostgreSQL and MySQL
DB Config
DChiselDB().configDB('dialect', // DIALECT DATABASE, IF YOU USE POSTGRESQL CHANGE 'dialect' to 'postgre', IF YOU USE MYSQL CHANGE 'dialect' to 'mysql'
host: 'your_host',
db: 'your_db_name',
port: your_port, //integer
username: 'your_db_username',
password: 'your_db_password');
copied to clipboard
Get All Data
DChiselDB().getAll('your_table_name');
copied to clipboard
Get Data With Custom Column and Filter
DChiselDB().getOption('your_table_name',
column: 'your_column1,your_column2',
where: ['your_column_name', 'your_filter_value']);
copied to clipboard
If you want filter contains, just add % into your filter value, example :
'%your_filter_value%'
copied to clipboard
Create Data
DChiselDB().create('users', data: {
'your_column_name': 'your_value'
});
copied to clipboard
Update Data
DChiselDB().update('users', data: {
'your_column_name': 'your_value'
}, where: ['your_filter_column_name', 'your_filter_value']);
copied to clipboard
Delete Data
DChiselDB().deleteAll('your_table_name');
copied to clipboard
Delete Data Custom Filter
DChiselDB().deleteOption('your_table_name', where: ['your_filter_column_name', 'your_filter_value']);
copied to clipboard
Issues #
Please file any issues, bugs or feature requests as an issue on our GitHub page. Commercial support is available, you can contact us at [email protected].
Want to contribute #
If you would like to contribute to the plugin (e.g. by improving the documentation, solving a bug or adding a cool new feature), please carefully review our contribution guide and send us your pull request.
Author #
This dchisel framework for Dart is developed by Alphacsoft.
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.