euv-cli-0.3.18 is not a library.
euv-cli
The official CLI tool for the euv UI framework, providing run/build modes with hot reload and wasm-pack integration.
Installation
cargo install euv-cli
Usage
The CLI uses the pattern euv <action> where:
- Action:
run(build + start server) orbuild(build only)
All wasm-pack build arguments are transparently forwarded after --.
Run (build + dev server)
# Build and start dev server with hot-reload
euv run -- --target web --out-name euv
# Build and start dev server with custom crate path and port
euv run --crate-path ./example --port 3000 -- --target web --out-name euv
# Release build with dev server
euv run --crate-path ./example -- --release --target web --out-name euv
# Use a custom static assets directory instead of the default "www"
euv run --www-dir public -- --target web --out-name euv
Build (build only)
# Dev build
euv build -- --target web --out-name euv
# Release build
euv build -- --release --target web --out-name euv
# Build with custom crate path and static directory
euv build --crate-path ./example --www-dir public -- --target web --out-name euv
Via Cargo
cargo run -p euv-cli -- run --crate-path ./example --port 3000 -- --target web --out-dir www/pkg --out-name euv
cargo run -p euv-cli -- build --crate-path ./example -- --release --target web --out-dir www/pkg --out-name euv
# Custom static directory
cargo run -p euv-cli -- run --crate-path ./example --www-dir public -- --target web --out-name euv
euv Options
| Option | Short | Default | Description |
|---|---|---|---|
--crate-path |
-c |
. |
Path to the Rust crate containing the WASM application |
--port |
-p |
3000 |
Port for the development server |
--www-dir |
www |
Directory name for static assets and generated HTML (relative to crate-path) |
How --www-dir Works
The --www-dir option controls where the CLI looks for and generates static assets:
index.htmlis generated inside{crate-path}/{www-dir}/- WASM artifacts are placed in
{crate-path}/{www-dir}/pkg/by default (unless overridden by--out-dir) - Dev server serves files under the
/{www-dir}/route prefix - JS import path in
index.htmlis automatically computed relative to the www directory
For example, with --www-dir public:
example/
├── public/ ← static assets directory
│ ├── index.html ← generated HTML
│ └── pkg/ ← WASM build output
│ ├── euv.js
│ └── euv_bg.wasm
wasm-pack Options (transparent passthrough after --)
All wasm-pack build flags are forwarded as-is. Common options:
| Option | Description |
|---|---|
--target |
Target environment: bundler, nodejs, web, no-modules, deno |
--out-dir |
Output directory with a relative path |
--out-name |
Output file names, defaults to package name |
--dev |
Create a development build |
--release |
Create a release build |
--profiling |
Create a profiling build |
--scope |
The npm scope to use in package.json |
--mode |
Steps to be run: no-install, normal, force |
--no-typescript |
Disable TypeScript declaration file generation |
--weak-refs |
Enable usage of the JS weak references proposal |
--reference-types |
Enable usage of WebAssembly reference types |
--no-pack |
Do not generate a package.json |
--no-opt |
Skip optimization with wasm-opt |
See wasm-pack build --help for the full list of options.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Contributing
Contributions are welcome! Please open an issue or submit a pull request.
Contact
For any inquiries, please reach out to the author at root@ltpp.vip.