Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/zzy/tide-async-graphql-mongodb
Clean boilerplate for graphql services, wasm/yew frontend, handlebars frontend. Using tide, rhai, async-graphql, surf, graphql-client, yew, handlebars, jsonwebtoken, and mongodb.
https://github.com/zzy/tide-async-graphql-mongodb
async-graphql handlebars jwt-auth mongodb rhai rust surf tide wasm webassembly yew
Last synced: 21 days ago
JSON representation
Clean boilerplate for graphql services, wasm/yew frontend, handlebars frontend. Using tide, rhai, async-graphql, surf, graphql-client, yew, handlebars, jsonwebtoken, and mongodb.
- Host: GitHub
- URL: https://github.com/zzy/tide-async-graphql-mongodb
- Owner: zzy
- License: apache-2.0
- Created: 2020-12-28T13:06:49.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2023-02-08T09:52:12.000Z (over 1 year ago)
- Last Synced: 2024-10-01T07:04:58.244Z (about 1 month ago)
- Topics: async-graphql, handlebars, jwt-auth, mongodb, rhai, rust, surf, tide, wasm, webassembly, yew
- Language: Rust
- Homepage: https://niqin.com
- Size: 683 KB
- Stars: 44
- Watchers: 3
- Forks: 9
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE-APACHE
Awesome Lists containing this project
- awesome-yew - tide-async-graphql-mongodb - Clean boilerplate for graphql services, with wasm/yew frontend. (Projects)
README
# tide-async-graphql-mongodb
Clean boilerplate for graphql services, wasm/yew frontend, handlebars frontend.
Using tide, rhai, async-graphql, surf, graphql-client, yew, handlebars, jsonwebtoken, and mongodb.
See also:
- https://github.com/zzy/surfer - Simple WIP blog & upcoming upgrades.
- https://github.com/piexue/piexue.com - Multi-language CMS based on the Rust web stacks.## Features
- Demo site:
- [niqin.com - NiQin Books Platform | 泥芹书馆](https://niqin.com)
- [piexue.com - Project Matchmaking | 项目对接](https://piexue.com)- Graphql Services
- [x] User register
- [x] Salt and hash a password with PBKDF2 - 使用 PBKDF2 对密码进行加密(salt)和散列(hash)运算
- [x] Sign in
- [x] JSON web token authentication - JWT 鉴权整合
- [x] Change password
- [x] Profile Update
- [x] User: query & mutation
- [x] Project: query & mutation
- Web Application
- [x] Client request, bring & parse GraphQL data
- [x] Render data to template engine
- [x] Define custom helper with Rhai scripting language## Stacks
- [Rust](https://www.rust-lang.org) - [中文资料集萃](https://niqin.com)
- [Tide](https://crates.io/crates/tide) - [中文文档](https://tide-book.niqin.com)
- [rhai](https://crates.io/crates/rhai) - Embedded Scripting for Rust
- [async-graphql](https://crates.io/crates/async-graphql) - [中文文档](https://async-graphql.niqin.com)
- [mongodb & mongo-rust-driver](https://crates.io/crates/mongodb)
- [Surf](https://crates.io/crates/surf)
- [yew](https://crates.io/crates/yew)
- [graphql_client](https://crates.io/crates/graphql_client)
- [handlebars-rust](https://crates.io/crates/handlebars)
- [jsonwebtoken](https://crates.io/crates/jsonwebtoken)
- [cookie-rs](https://crates.io/crates/cookie)## MongoDB data
MongoDB data(include structure & documents) file is `/data/budshome.sql`.
If you need mongodb cloud count, email to me or wechat(微信): yupen-com, please.
## How to run?
Please read:
- [**Backend: graphql servies server**](./backend/README.md)
- [**Frontend-yew: web application server**](./frontend-yew/README.md)
- [**Frontend-handlebars: web application server**](./frontend-handlebars/README.md)## Contributing
You are welcome in contributing to this project.