Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ulagbulag/cassette
Cloud-native Template-based dynamic declarative Web UI Framework
https://github.com/ulagbulag/cassette
gui kubernetes rust template-based wasm web web-framework
Last synced: 5 days ago
JSON representation
Cloud-native Template-based dynamic declarative Web UI Framework
- Host: GitHub
- URL: https://github.com/ulagbulag/cassette
- Owner: ulagbulag
- License: agpl-3.0
- Created: 2024-07-09T10:19:56.000Z (7 months ago)
- Default Branch: master
- Last Pushed: 2024-11-18T03:36:33.000Z (2 months ago)
- Last Synced: 2024-12-18T12:02:47.681Z (about 1 month ago)
- Topics: gui, kubernetes, rust, template-based, wasm, web, web-framework
- Language: Rust
- Homepage: https://api.ulagbulag.io
- Size: 727 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 📼 Cassette
![Cassette logo](/assets/images/icons/logo.webp)
This is a Cloud-native Template-based dynamic declarative web UI framework built with [Yew].
You can get started by experiencing the various features here: https://api.ulagbulag.io
You can also deploy your own example app using one-line simple command:
```bash
just run-examples # trunk serve --features examples
```## Tutorial
TBD
## Usage
TBD
## Building
### Cassette Player (App)
#### Dependencies
- node (npm)
- rustup#### Install dependencies
```bash
cargo install just # for Justfile
```#### Build
```bash
just build
```#### Run a local server
```bash
just run # or, just type "just"
```### Cassette Gateway
#### Dependencies
- rustup
#### Install dependencies
```bash
cargo install just # for Justfile
```#### Run a local server
```bash
just run-gateway
```#### Test
```bash
just test
```### Cassette K8S Operator
#### Dependencies
- rustup
#### Install dependencies
```bash
cargo install just # for Justfile
```#### Run a local server
```bash
just run-operator
```#### Test
```bash
just test
```## Building Container Images
### Build
```bash
just oci-build # Player (App)
just oci-build-server # Gateway, Operator
```### Run a local server
```bash
# Gateway
docker run --name cassette-gateway --rm \
-p 8080:8080 \
"quay.io/ulagbulag/cassette-server:latest" \
'cassette-gateway'# Player (App)
docker run --name cassette-player --rm \
-p 6080:6080 \
"quay.io/ulagbulag/cassette:latest"
```### Run a local K8S operator
```bash
docker run --name cassette-operator --rm \
-v ~/.kube:/root/.kube:ro \
"quay.io/ulagbulag/cassette-server:latest" \
'cassette-operator'
```### Deploy
```bash
just oci-push # Player (App)
just oci-push-server # Gateway, Operator
```## Deploy on K8S
Please check [sample kubernetes](/kubernetes) files.
## LICENSE
It is licensed under [AGPL v3.0 OR LATER](LICENSE).
[Yew]: https://github.com/yewstack/yew