# Lux Website ## Testing Locally The website is a static HTML site. To test it with working navigation: ### Option 1: Python (simplest) ```bash cd website/lux-site/dist python -m http.server 8000 # Open http://localhost:8000 ``` ### Option 2: Node.js ```bash npx serve website/lux-site/dist # Open http://localhost:3000 ``` ### Option 3: Nix ```bash nix-shell -p python3 --run "cd website/lux-site/dist && python -m http.server 8000" ``` ### Option 4: Direct file (limited) Open `website/lux-site/dist/index.html` directly in a browser. Navigation links will work since they're anchor links (`#features`, `#effects`, etc.), but this won't work for multi-page setups. ## Structure ``` website/lux-site/ ├── dist/ │ ├── index.html # Main website │ └── static/ │ └── style.css # Styles ├── src/ │ ├── components.lux # Lux components (for future generation) │ ├── pages.lux # Page templates │ └── generate.lux # Site generator ├── LUX_WEAKNESSES.md # Issues found during development └── README.md # This file ``` ## Building with Lux Once the module system is working (fixed!), you can generate the site: ```bash ./target/release/lux website/lux-site/src/generate.lux ``` The HTML module is now functional and can render HTML from Lux code: ```lux import stdlib/html let page = html.div([html.class("container")], [ html.h1([], [html.text("Hello!")]) ]) Console.print(html.render(page)) // Output:

Hello!

``` ## Deployment For GitHub Pages or any static hosting: ```bash # Copy dist folder to your hosting cp -r website/lux-site/dist/* /path/to/deploy/ ```