56 releases (7 breaking)
0.8.0 | Sep 21, 2022 |
---|---|
0.6.8 | Jul 16, 2022 |
#2305 in Web programming
83KB
2.5K
SLoC
Zapp
Rust Serverless Framework
The Zapp project was launched with the goal of reducing software development, operation and maintenance costs.
Build Serverless Apps faster. Powered by Rust, Aysnc-GraphQL, SeaORM, Axum, and Google Cloud.
- Focus on business logic in serverless environment
- Maximize development efficiency with CI / CD standard schema-driven Scaffold
- Achieve global scale with lower management costs
Dependency
Cloud Infrastructure
- Google Cloud Run
- Google Cloud SQL
- Google Cloud IAM
- Google Cloud Container Registry
- Google Cloud VPC
- Google Cloud Nat
- Github Actions
Document
Installation
$ cargo install zapp
$ zapp --help
zapp 0.5.6
EpicsDAO
Rust Serverless Framework
USAGE:
zapp <SUBCOMMAND>
OPTIONS:
-h, --help Print help information
-V, --version Print version information
SUBCOMMANDS:
compute
db
docker
g
gcloud
gh
help Print this message or the help of the given subcommand(s)
iam
init
new
run
sql
QuickStart
Create your application with zapp CLI.
$ zapp new YOURAPP
███████╗ █████╗ ██████╗ ██████╗
╚══███╔╝██╔══██╗██╔══██╗██╔══██╗
███╔╝ ███████║██████╔╝██████╔╝
███╔╝ ██╔══██║██╔═══╝ ██╔═══╝
███████╗██║ ██║██║ ██║
╚══════╝╚═╝ ╚═╝╚═╝ ╚═╝
💃 💃 💃 💃 💃 💃 💃 💃 💃 💃 💃 💃
Rust Serverless Framework
$ cd YOURAPP
$ zapp docker psql
$ cargo run
Go to : http://localhost:3000/api/graphql
Create Docker PostgreSQL
$ zapp docker psql
✅ PostgreSQL Container Created: 4619cfc047f3cad6c9db8d255aff841fbfe34bbef0e2661fa3a02db5d5ec5d91
Run GraphQL Local Server
$ cargo run
Now go to
http://localhost:3000/api/graphql
GraphQL Mutation/Query Scaffold
Create Model
$ zapp g model user
✅ Successfully created migration file: migration/src/m20220613_102512_create_user_table.rs
✅ Successfully added route to `migration/src/lib.rs`
✅ Successfully created entity file: entity/src/user.rs
✅ Successfully created mutation file: src/graphql/mutation/user.rs
✅ Successfully created query file: src/graphql/query/user.rs
✅ Successfully added route to `entity/src/lib.rs`
✅ Successfully added mutation route: src/graphql/mutation/mod.rs
✅ Successfully added mutation route: src/graphql/query/mod.rs
Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/EpicsDao/zapp. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.
License
The gem is available as open source under the terms of the Apache-2.0 License.
Code of Conduct
Everyone interacting in the EpicsDAO project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.
Dependencies
~8–17MB
~230K SLoC