Project folders
scenes/for entry pagescraft/for reusable componentsservices/for server-side helpersmedia/for images and assetsdepot/publicanddepot/vaultfor build output
.lux filesLuxaura is an intent-driven web framework that lets you define frontend UI, backend vault actions, styling, reactivity, and layout using a compact authoring model.
canvas, signal, and paintvaultInstall Luxaura globally, create a project, and start the development server.
npm install -g luxaura
luxaura release my-app
cd my-app
luxaura ignite
Luxaura projects usually use:
scenes/ for entry pagescraft/ for reusable componentsservices/ for server-side helpersmedia/ for images and assetsdepot/public and depot/vault for build outputreceive: external inputssignal: reactive statevault: backend-only actionspaint: stylingcanvas: UI tree.luxLuxaura frontend code is written with a canvas tree and reactive state.
receive
title: String = "My Product"
signal
count: 0
tab: "overview"
paint
self
breathe: 8
Headline
size: titan
weight: heavy
Trigger
curve: pill
glow: soft
canvas
Scene
Stack
Headline "<<title>>"
Body "Clicked <<count>> times"
Strip
Trigger "Increase"
when click:
count = count + 1
Trigger "Overview"
when click:
tab = "overview"
Trigger "Details"
when click:
tab = "details"
if tab == "overview":
Body "Overview content"
else:
Body "Details content"
Scene, Stack, Strip, MosaicRibbon for responsive navigationPlate for cardsHeadline, Body, MarkPicture, Field, Trigger, ToggleMosaic auto-fits cards into responsive columnsStrip wraps and collapses better on small screensRibbon can collapse to a hamburger menu on phonesvaultVault actions run on the server. They are compiled into backend code and are not shipped to the browser.
signal
status: "Ready"
name: ""
email: ""
message: ""
vault
action sendContact(name, email, message):
if (!name || !email || !message) {
return "Please complete every field."
}
return `Saved message from ${name}`
canvas
Scene
Stack
Field placeholder:"Your Name" bind:"name"
Field placeholder:"Your Email" kind:"email" bind:"email"
Field placeholder:"Your Message" kind:"textarea" bind:"message"
Trigger "Send"
when click:
status = await vault.sendContact(name, email, message)
Body "<<status>>"
Use vault whenever you need database access, secure logic, private tokens, or server-side validation.
luxaura release <name>Create a new Luxaura project.
luxaura igniteStart the dev server with live reload.
luxaura forgeBuild the app into static public output and vault output.
luxaura benchmarkMeasure parser, compiler, and forge performance.
luxaura component <name>Scaffold a new reusable craft component.
luxaura service <name>Create a server-side service file.
luxaura module <name>Create a shared module.
luxaura polishFormat all .lux files.
luxaura shieldRun security checks for risky patterns and vault leaks.
luxaura help_meOpen the built-in command guide.
Luxaura generates meaningful HTML instead of waiting for a blank client-side shell to render everything.
Frontend and backend stay close together conceptually, while vault code still stays server-only.
Core layout nodes ship with responsive behavior so apps do less repetitive CSS work.
You work with a small set of blocks and nodes rather than many disconnected layers.
Scaffold, run, build, benchmark, polish, and scan with a single toolchain.
Vault logic helps prevent sensitive backend logic from leaking into browser bundles.
Luxaura aims to reduce boilerplate, ship static-first output, and keep full-stack concerns in one workflow.
Luxaura adds reactive signals, structured components, responsive primitives, and CLI tooling on top of templating-style simplicity.
It can be easier to reason about a feature when UI, state, style, and server actions all live in one intentional model.
No framework is objectively better for every project. Luxaura is strongest when you want full-stack simplicity, readable authoring, fast composition, and a static-first rendering model.
Luxaura is now easier to publish and search for using terms such as: