alia-foundry 0.2.0

Cast web into native metal. HTML/CSS/JS compiled to GPU-rendered native binaries.
Documentation
# Limitations


Foundry is honest about what it cannot do.

## CSS


**Not supported:** grid, media queries, calc(), custom properties (var()), pseudo-elements (::before/::after), float, transform, box-shadow, text-decoration, text-transform, white-space, cursor, table layout, gradients, background-image.

**Partially supported:** `display: block` approximated as flex-column. `display: inline` approximated as flex. Percentage units work for width/height but not all properties.

## JS


- No fetch, XMLHttpRequest, Promise, async/await
- No import, require, export
- No setTimeout, setInterval
- No localStorage, sessionStorage, window object
- boa is 10-100x slower than V8 for computation
- DOM bridge uses method syntax: `el.setTextContent(x)` not `el.textContent = x`

## Rendering


- No image rendering (planned v0.2)
- No SVG, canvas, video, or audio
- System fonts only (no font embedding yet)
- Latin scripts reliable; complex scripts (Arabic, Devanagari) may render incorrectly
- Grayscale antialiasing only (no subpixel/ClearType)
- Text input is visual only (no cursor, selection, keyboard input)

## Platform


- No accessibility (screen readers cannot read GPU pixels)
- No clipboard, drag-and-drop, system tray, or menu bar
- Vulkan + Metal backends (no DX12 in v0.1)
- DPI scaling works but fractional scales may blur slightly

## Build


- `foundry build` requires Rust toolchain on the build machine
- External CSS/JS files in `<link>`/`<script src>` are not yet inlined into the binary (use inline styles/scripts for now)
- Build takes 4-11 minutes (full release compilation)

## When NOT to Use Foundry


- Full web compatibility needed (use Electron)
- Accessibility required (use native UI or webview)
- Network APIs, WebSocket, real-time data (use Electron)
- Text input with IME (use native UI)
- DevTools debugging needed (use a browser)

## When Foundry Works


- Dashboards and monitoring displays
- Kiosk and point-of-sale UIs
- Embedded device interfaces
- Game overlay UIs
- Internal tools where binary size matters
- Demos and prototypes