Files
yawn/AGENTS.md
T
Akash Shakdwipeea cb65a52e95 gltf models loader (#10)
* use channels for comms

this also refactors the app setup and messaging modules

* remove double logging

* load single model gltf files

* add gltf loader

* add sponza model

* camera with rotors (#11)

* orbit with rotors

* add dolly behaviour to emulate zoom
2025-10-04 12:47:30 +05:30

19 lines
1.1 KiB
Markdown

# Build, Lint, and Test Commands
- `npm run dev`: Start Vite dev server with hot reload for WASM bundle
- `npm run build`: Build optimized WASM and JS in `dist/` for development
- `npm run build-release`: Build optimized WASM and JS for production
- `cargo check`: Validate Rust sources quickly before full builds
- `cargo fmt`: Format Rust code with rustfmt
- No unit tests currently exist; add them as `*_tests.rs` modules
# Code Style Guidelines
- **Rust 2021 idioms**: Use snake_case for modules, files, functions, and variables
- **Indentation**: 4 spaces (configured in rustfmt)
- **Imports**: Group std library, external crates, then local modules
- **Types**: Use descriptive struct fields and enum variants (e.g., `positions`, `normals`)
- **Error handling**: Use `thiserror` derive macro for custom error types
- **Naming**: Mirror GLTF semantics explicitly in struct fields
- **WGSL shaders**: Keep binding names aligned with Rust bind group layouts
- **JavaScript/TypeScript**: Format with prettier defaults
- **Comments**: Add documentation comments for public APIs using `///`