Erste Schritte
AURA ist ein C++20-Framework für native, touchfähige Oberflächen. Beschreibe deine UI in .aura, verbinde sie mit C++ und rendere mit Skia. SDL3 übernimmt Fenster und Eingabe.
Voraussetzungen
Unter Linux: CMake ≥ 3.24, Ninja, GCC ≥ 13, OpenSSL und zlib mit Entwicklerdateien. Für die UI werden X11-Entwicklerdateien benötigt. Weitere Abhängigkeiten lädt CMake über FetchContent. Du brauchst Zugriff auf einen AURA-Checkout; derzeit wird hier kein öffentlicher Repository-Download angeboten.
Bauen und starten
Im Wurzelverzeichnis des AURA-Checkouts:
cmake --preset dev
cmake --build build/dev
ctest --test-dir build/dev
build/dev/examples/hello/aura-hello
Das Framework erkunden
build/dev/examples/demo/aura-demo
build/dev/examples/demo/aura-demo --language en
build/dev/examples/demo/aura-demo --dynamic
build/dev/examples/demo/aura-demo --render-all /tmp/aura-demo
Die Galerie zeigt Widgets, Eingabe, Layouts, Grafik, Animation, Medien und Laufzeitmodule. Optionale Module sind von den Buildoptionen abhängig. Sieh dir die Demo-Dokumentation an.
In dein Programm einbinden
add_subdirectory(aura)
add_executable(my-app main.cpp)
aura_add_ui(my-app FILES ui/main.aura)
target_link_libraries(my-app PRIVATE aura::ui)
aura_add_ui lässt aurac typisierten C++-Code erzeugen. Die Anwendung verbindet Zustandswerte und Signale. Für die Integration und einen vollständigen Programmeinstieg: Die App-Seite.
Vorschau ohne Neustart
build/dev/tools/aura-view/aura-view examples/hello
In VS Code öffnet Ctrl+K V die Vorschau; alternativ gibt es den Vorschau-Eintrag in der Statusleiste. Siehe VS Code und aura-view.
Nächster Schritt
Lerne die Sprache, Zustand und Bindungen und den dynamischen Modus kennen.
Im Browser ausprobieren
Der Playground führt editierbare AURA-Dateien lokal als Wasm aus. Die Browser-Dokumentation erklärt den Build der vollständigen Hello-/Demo-Beispiele und die derzeitigen Plattformgrenzen.
Zielplattform wählen
Die Plattformübersicht erklärt den Stand von Linux, Browser/WebAssembly, Windows, macOS und mobilen Systemen sowie die jeweiligen Modulgrenzen.
website · Markdown herunterladen