Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/trunk-rs/trunk
Build, bundle & ship your Rust WASM application to the web.
https://github.com/trunk-rs/trunk
assets build-tool bundler compiler html rust sass scss wasm wasm-bindgen
Last synced: 4 days ago
JSON representation
Build, bundle & ship your Rust WASM application to the web.
- Host: GitHub
- URL: https://github.com/trunk-rs/trunk
- Owner: trunk-rs
- License: apache-2.0
- Created: 2020-08-19T17:49:07.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2024-04-26T09:50:14.000Z (9 months ago)
- Last Synced: 2024-05-01T16:11:41.866Z (9 months ago)
- Topics: assets, build-tool, bundler, compiler, html, rust, sass, scss, wasm, wasm-bindgen
- Language: Rust
- Homepage: https://trunkrs.dev/
- Size: 3.17 MB
- Stars: 3,182
- Watchers: 23
- Forks: 229
- Open Issues: 53
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE-APACHE
Awesome Lists containing this project
README
# Trunk
[![Build Status](https://github.com/trunk-rs/trunk/actions/workflows/ci.yaml/badge.svg)](https://github.com/trunk-rs/trunk/actions)
[![](https://img.shields.io/crates/v/trunk.svg?color=brightgreen&style=flat-square)](https://crates.io/crates/trunk)
![](https://img.shields.io/badge/license-MIT%2FApache--2.0-blue?style=flat-square)
[![Discord Chat](https://img.shields.io/discord/793890238267260958?logo=discord&style=flat-square)](https://discord.gg/JEPdBujTDr)
[![](https://img.shields.io/crates/d/trunk?label=downloads%20%28crates.io%29&style=flat-square)](https://crates.io/crates/trunk)
[![](https://img.shields.io/github/downloads/trunk-rs/trunk/total?label=downloads%20%28GH%29&style=flat-square)](https://github.com/trunk-rs/trunk/releases)
![](https://img.shields.io/homebrew/installs/dy/trunk?color=brightgreen&label=downloads%20%28brew%29&style=flat-square)**Build, bundle & ship your Rust WASM application to the web.**
*βPack your things, weβre going on an adventure!β ~ Ferris*Trunk is a WASM web application bundler for Rust. Trunk uses a simple, optional-config pattern for building & bundling WASM, JS snippets & other assets (images, css, scss) via a source HTML file.
**π¦ Dev server** - Trunk ships with a built-in server for rapid development workflows, as well as support for HTTP & WebSocket proxies.
**π Change detection** - Trunk watches your application for changes and triggers builds for you, including automatic browser reloading.
## Getting Started
Head on over to the [Trunk website](https://trunkrs.dev), everything you need is there. A few quick links:
- [Install](https://trunkrs.dev/#install)
- Download a released binary: https://github.com/trunk-rs/trunk/releases
- `cargo binstall trunk` (installing a pre-compiled binary using [cargo-binstall](https://github.com/cargo-bins/cargo-binstall))
- `cargo install trunk --locked` (compile your own binary from crates.io)
- `cargo install --git https://github.com/trunk-rs/trunk trunk` (compile your own binary from the most recent git commit)
- `cargo install --path . trunk` (compile your own binary form your local source)
- `brew install trunk` (installing from [Homebrew](https://brew.sh/))
- `nix-shell -p trunk` (installing from [nix packages](https://nixos.org/))
- [App Setup](https://trunkrs.dev//#app-setup)
- [Assets](https://trunkrs.dev/assets/)
- [Configuration](https://trunkrs.dev/configuration/)
- [CLI Commands](https://trunkrs.dev/commands/)## Examples
Check out the example web applications we maintain in-repo under the `examples` directory.
## Contributing
Anyone and everyone is welcome to contribute! Please review the [CONTRIBUTING.md](./CONTRIBUTING.md) document for more details. The best way to get started is to find an open issue, and then start hacking on implementing it. Letting other folks know that you are working on it, and sharing progress is a great approach. Open pull requests early and often, and please use GitHub's draft pull request feature.
### License
trunk is licensed under the terms of the MIT License or the Apache License 2.0, at your choosing.