Skip to main content
Luat

Build the web like
you're making a game

An open source templating engine that brings the power of Lua — the language that powers World of Warcraft, Roblox, and Angry Birds — to modern web development.

LUAT templating with Svelte-inspired syntax. SvelteKit-style routing. Maximum creativity.

0
Config Files
100%
Lua Powered
Possibilities
ProductList.luat
<!-- ProductList.luat -->
<script>
  local ProductCard = require("ProductCard")
  local products = props.products or {}
</script>

<section class="p-6">
  <h1 class="text-2xl font-bold mb-4">
    Featured Products
  </h1>

  <div class="grid grid-cols-3 gap-4">
    {#each products as product}
      <ProductCard
        name={product.name}
        price={product.price}
        image={product.image}
        inStock={product.inStock}
      />
    {/each}
  </div>

  {#if #products == 0}
    <p class="text-gray-500 text-center">
      No products found.
    </p>
  {/if}
</section>

Game-Level Performance

LUAT templates compile to blazing-fast Lua bytecode, just like the engines powering World of Warcraft and Roblox. Server-side rendering that's built for speed from day one.

Svelte-Inspired Syntax

Familiar #if, #each, and reactive patterns you love, powered by the proven stability of Lua. Write templates that feel natural and compile to efficient code.

Zero Config Magic

TailwindCSS, TypeScript, Alpine.js, and HTMX work seamlessly together. No webpack configs, no build tool nightmares. Just pure creativity.

Why Lua? Because Games.

Lua has been an inspiration and foundation for visual, highly dynamic, and naturally interactive systems. From powering World of Warcraftmods to running critical AI and game logic in Angry Birds andCorona SDK, its vibrant heritage makes it ideal for modern web applications.

Why Choose Luat?

Stop configuring. Start creating. Luat gives you everything you need to build modern web applications without the complexity.

Lightning Fast Development

Write less boilerplate. Zero configuration means you can start building immediately without wrestling with build tools.

Get productive in minutes

Server-Side by Design

LUAT templates render on the server with optional client-side hydration. SEO-friendly and fast by default.

Perfect Lighthouse scores

Game-Proven Language

Lua powers some of the most complex interactive experiences ever created. Now it powers your web apps.

Battle-tested stability

Modern Frontend Stack

TailwindCSS, Alpine.js, HTMX, and TypeScript work together seamlessly. No configuration required.

Best-in-class DX

Ready to level up your web development?

Join the growing community of developers who've discovered the joy of building with Luat.

See It In Action

Interactive examples you can edit right here. Change the code and click Run to see the results.

Props Spread Operator

Pass props dynamically with the spread operator. Combine base props, theme props, and overrides.

Loading Luat...

Children & Slots

Compose components with children rendering. Build layout components that wrap any content.

Loading Luat...

Full Application

Build complete UIs with multiple components. Server-rendered for instant load times.

Loading Luat...