docs.rs failed to build axo-platforms-0.1.3
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Axo Framework
Crea más rápido. Hazlo completo. Extiéndelo todo.
Axo es un framework UI multiplataforma con motor Rust (wgpu) y capa de scripting Lua. Ideal para apps internas, dashboards embebidos, terminales POS, y herramientas de nicho.
Stack
| Capa | Tecnología |
|---|---|
| Renderizado | wgpu (Vulkan/Metal/DX12/WebGL2) |
| Layout | Taffy (Flexbox/CSS Grid) |
| Scripting | Lua 5.4 via mlua |
| Hot Reload | File watcher (notify) |
| Texto | ab_glyph (outline rendering) |
| Objetivos | Linux, macOS, Windows, Android, iOS, Web |
Quickstart
# Instalar
# Crear proyecto
# Desarrollo con hot reload
# Build producción
Conceptos
UI desde Lua
local UI = require
return App
onClick — Nombres de función global
onClick recibe un string con el nombre de una función Lua global. Cuando el usuario hace clic, Axo busca y ejecuta esa función.
-- Function reference (almacenada automáticamente)
UI.
-- Global function name
UI.
Device API
Acceso a hardware del dispositivo desde Lua:
local info = Device.
print
Device.
Device.
Device.
local data = Device.
Device.
| Función | Descripción |
|---|---|
Device.info() |
OS, versión, modelo, pantalla |
Device.checkPermission(name) |
Estado de permiso |
Device.requestPermission(name) |
Solicitar permiso |
Device.getLocation() |
GPS (lat, lng, accuracy) |
Device.getSensors() |
Acelerómetro, giroscopio |
Device.readFile(path) |
Leer archivo |
Device.writeFile(path, content) |
Escribir archivo |
Device.deleteFile(path) |
Eliminar archivo |
Device.showNotification(title, body) |
Notificación |
Device.takePhoto() |
Cámara (stub) |
Permisos disponibles
"camera","location","storage","notifications","microphone","contacts"
CLI
Estructura del proyecto
my-app/
├── app/
│ ├── app.lua # Entry point (debe retornar App())
│ │ └── axo/init.lua # Std library (View, Text, Button, etc.)
└── README.md
Arquitectura
┌─────────────────┐ ┌──────────────────┐
│ Lua App │ │ Rust Core │
│ app.lua │◄───►│ wgpu + Taffy │
│ init.lua │ │ + ab_glyph │
└────────┬────────┘ └────────┬─────────┘
│ │
▼ ▼
Device API Hot Reload
(permisos, (file watcher)
GPS, storage)
Licencia
MIT