Caution
Esta pagina no se publicará hasta que el nuevo diseño se encuentre listo https://www.figma.com/design/S9yCZSaZ9q54XSojWNhJft/Rust-Lang-ES?node-id=0-1&p=f&t=Cn6Q0QzGflLYCOgo-0
Antes de empezar es necesario tener estos programas
Important
Necesitas wasm-bindgen-cli en la versión 0.2.126 (la misma que fija
flake.nix). Si no coincide con el wasm-bindgen del Cargo.lock,
cargo make serve/build falla con un error de "schema version mismatch".
cargo install -f wasm-bindgen-cli --version 0.2.126- Usando scoop
scoop install busybox - Usando choco
choco install busybox
Note
Necesitas fetch git submodules para clonar los assets externos para el desarrollo
Este proyecto usa Makefile para agilizar ciertos procesos y no tener que estar escribiendo comandos manualmente.
Con estos comandos podrá empezar a desarrollar
Rust:
rustup toolchain install nightly
rustup default nightly
rustup target add wasm32-unknown-unknown
cargo install cargo-make
cargo install rusty-hook
cargo install leptosfmt --version 0.1.13Para configurar el proyecto en general, se recomienda usar el siguiente comando, ya que este comando engloba todos los camandos listados más abajo:
cargo make setupO si prefieres ejecutar cada uno de los comandos manualmente:
git submodule update --init --recursive
cd design-system-components && pnpm install --ignore-scripts
cd styles && pnpm run build
cd ../..
pnpm run postinstallPara ejecutar el proyecto:
Sin cargo make:
cargo leptos serve --hot-reload --features developmentCon cargo make:
cargo make serveSi usas nix
Note
Asegúrate de tener los flakes activados.
direnv allowAhora podemos iniciar el servidor con:
cargo make serveAgrega esto en tu settings.json
{
"emmet.includeLanguages": {
"rust": "html",
"*.rs": "html"
},
"tailwindCSS.includeLanguages": {
"rust": "html",
"*.rs": "html"
},
"files.associations": {
"*.rs": "rust"
},
"editor.quickSuggestions": {
"other": "on",
"comments": "on",
"strings": true
},
"css.validate": false
}Este proyecto utiliza una rama personalizada de Leptos para poder servir directamente el directorio de salida como un sitio web estático.
cargo make serve sirve el directorio div con watch mode y hot-reload.
cargo make build compila el proyecto en release. La salida estará en el
directorio dist y el comando no lo servirá, sino que se cerrará.
cargo make fmt formatea con rustfmt y leptosfmt.
