Svelte-inspired server-side Lua templating for Rust.
Website • Getting Started • Syntax Guide • Editor Support
⚠️ Early Release - This is the first public release of Luat. The API is still evolving and not yet production-ready. Feedback and contributions are welcome.
{#if}, {#each}, components, and expressions# npm (recommended)
npm install -g @maravilla-labs/luat
# Shell script (Linux/macOS)
curl -fsSL https://raw.githubusercontent.com/maravilla-labs/luat/main/scripts/install.sh | sh
# Cargo (Rust developers)
cargo install luat-cli
luat init my-app
cd my-app
luat dev
<!-- HomePage.luat -->
<script>
local Card = require("components/Card")
local title = "Welcome to LUAT"
local subtitle = "Build dynamic web applications"
</script>
<div class="homepage">
<Card title={title} subtitle={subtitle} />
</div>
For the full syntax guide, see the documentation. There's also a live playground to try Luat in your browser.
Get syntax highlighting, diagnostics, and autocomplete for .luat files:
See luat-tools for installation instructions.
Contributions are welcome! Please see CONTRIBUTING.md for guidelines.
Licensed under either of Apache-2.0 or MIT at your option.
Created and maintained by Maravilla Labs.