ZELYRA
ZELYRA / SCHNELLSTART & SETUP

Dein erstes Programm.
In fünf Minuten.

Teste Code im Browser und installiere anschließend eine veröffentlichte Version für Linux oder Windows x86_64. Unter macOS ist derzeit ein Quellcode-Build mit Rust und Cargo nötig; Docker steht für den Projekt-Stack bereit.

⏱ 5-Minuten-Praxis ⚡ Für Einsteiger 📦 4 Installationswege 🎨 8+ Code-Editoren unterstützt Zelyra v1.2.41
01 / DIE GRUNDIDEE

Drei einfache Schritte.
Ein echtes Ergebnis.

Du musst am Anfang nicht jedes Zeichen auswendig lernen. Erkenne zuerst die Form: Eine typisierte Funktion empfängt Parameter, berechnet ein Ergebnis und wird aus `main()` aufgerufen.

01 / AUSPROBIEREN

Starte mit einem lauffähigen Programm

Der Code hat bereits eine klare Aufgabe: eine Person mit typisiertem String begrüßen.

02 / VERÄNDERN

Verändere nur eine Kleinigkeit

Ersetze den Namen, ändere Werte oder wähle eines der fertigen Presets aus.

03 / AUSFÜHREN

Echtes Compiler-Ergebnis sehen

Führe den Code direkt mit dem echten Zelyra-Compiler im Browser aus.

02 / INTERAKTIVE BROWSER-SANDBOX

Jetzt direkt ausprobieren.
Ohne lokale Installation.

Bearbeite den Zelyra-Code im Editor und klicke auf »Ausführen«. Dein Code wird in Echtzeit vom echten Zelyra-Compiler ausgeführt.

DEIN ERSTES EXPERIMENT

Ändere den Namen

Suche im rechten Code-Editor nach `"Welt"` und ersetze es durch deinen eigenen Namen, z. B. `"Zelyra-Entwickler"`. Klicke danach auf »Ausführen«.

Tastatur-Tipp: Drücke Strg+Enter bzw. Cmd+Enter zum schnellen Ausführen.

main.zyl UTF-8
Zelyra v1.2.41 Compiler-Engine
Terminal-Ausgabe:
✓ Bereit. Klicke auf »Ausführen«.
03 / DIE ANATOMIE EINER DATEI

Die sechs Bausteine.
Lesbar. Explizit. Strukturiert.

Zelyra-Quelldateien verwenden explizite Sprachkonstrukte. Der Compiler prüft umgesetzte Syntax und Typen, schließt Laufzeitüberraschungen aber nicht aus:

fn

Funktionen

Deklariert wiederverwendbare Logik mit typisierten Parametern und Rückgabetyp.

var = ... / mutable

Variablen

Standardmäßig unveränderlich (`name = val`). Veränderbar nur mit `mutable`.

struct

Datenmodelle

Fasst zusammengehörige Felder mit festen Datentypen strukturiert zusammen.

Option / Result

Optionale Werte ausdrücklich kennzeichnen

Die Sprache enthält Konstrukte für optionale Werte und Ergebnisse. Statische Prüfungen decken nur unterstützte Fälle ab.

invariant

Invariante Absicherungen

Der Compiler prüft unterstützte Konstrukte; das ist kein formaler Beweis für die Fehlerfreiheit einer Anwendung.

fn main()

Haupteinstiegspunkt

Der zentrale Startpunkt jedes Zelyra-Programms beim Start über die CLI.

04 / INSTALLATION AUF DEINEM SYSTEM

Auf deinem Computer installieren.
Wähle dein Betriebssystem.

Wähle einen Installationsweg. Veröffentlichte Binärdateien gibt es derzeit für Linux x86_64 und Windows x86_64; macOS benötigt einen Build aus dem Quellcode.

Installation unter macOS

Es gibt noch kein natives Release-Artefakt. Der Build erfolgt mit Rust und Cargo aus dem Quellcode.

Rust & Cargo
1
Option A: Aus dem Quellcode installieren

Installiere zuerst Rust stable und Cargo, klone dann das Repository und starte den Installer:

git clone https://github.com/sf1976/zelyra.git
cd zelyra
./install.sh
2
Option B: Vorhandenen Checkout neu bauen

In einem bereits geklonten Repository kannst du den Installer nach einem Quellcode-Update erneut ausführen:

cd zelyra
git pull --ff-only
./install.sh
3
Installation prüfen

Prüfe, ob Zelyra erfolgreich im PATH liegt:

zelyra --version
zelyra doctor

Installation unter Linux

Veröffentlichtes Release-Artefakt: Linux x86_64 (GNU). Andere Umgebungen können den Quellcode bauen.

curl | bash
1
Option A: Schnellinstallation
curl -fsSL https://raw.githubusercontent.com/sf1976/zelyra/main/install.sh | bash -s -- --release v1.2.40
2
Option B: Git-Klon
git clone https://github.com/sf1976/zelyra.git
cd zelyra
./install.sh
3
Installation und PATH überprüfen

Prüfe, ob `zelyra` in deinem PATH liegt, und starte die Systemdiagnose:

zelyra --version
zelyra doctor
💡 Hinweis zur PATH-Konfiguration: Falls `zelyra: command not found` gemeldet wird, füge `export PATH="$HOME/.local/bin:$PATH"` in deine `~/.bashrc` bzw. `~/.zshrc` ein und lade sie neu.

Installation unter Windows (PowerShell & WSL2)

Natives PowerShell-Skript oder über das Windows Subsystem for Linux (WSL2).

Windows 10 / 11
1
PowerShell 1-Zeilen Schnellinstallation

Öffne die PowerShell (keine Administrator-Rechte erforderlich) und führe aus:

irm https://raw.githubusercontent.com/sf1976/zelyra/main/install.ps1 | iex
2
Oder Klonen mit Git for Windows

Klone das Repository und starte install.ps1 direkt:

git clone https://github.com/sf1976/zelyra.git
cd zelyra
.\install.ps1
3
Prüfung in der PowerShell
zelyra --version
zelyra doctor

Docker Desktop & Container-Entwicklung

Die MariaDB-Vorlage erzeugt MariaDB und einen Zelyra-Webdienst. Nginx wird dabei nicht hinzugefügt.

Empfohlen für Datenbank-Apps
1
Klonen und Stack starten

Startet den Zelyra-App-Container und MariaDB mit automatischer Portwahl:

git clone https://github.com/sf1976/zelyra.git
cd zelyra
docker compose -f docker-compose.mariadb.yml up -d --build
2
Befehle im Container ausführen
docker compose exec app zelyra --version
docker compose exec app zelyra run examples/fibonacci.zyl
05 / PROJEKT- & ORDNERSTRUKTUR

Die ideale Projektstruktur.
Standardisiert. Klar. Wartbar.

`zelyra new` legt Dateien für die ausgewählte Vorlage an. Prüfe das erzeugte Projekt und bewahre Zugangsdaten in deiner lokalen Umgebungskonfiguration auf:

📁 Erzeugte MariaDB-Vorlage Zelyra v1.2.41
mein-projekt/
├── main.zyl                  # Zelyra-Quelldatei
├── zelyra.toml               # Projektkonfiguration
├── .env                      # lokale Konfiguration
├── .env.example              # Beispiel ohne Geheimnisse
├── .gitignore                # Git-Ausschlüsse
├── Dockerfile
├── docker-compose.mariadb.yml
├── locales/
│   ├── de.json
│   └── en.json
└── machine-management-demo.sql
main.zyl Quellcode

In der MariaDB-Vorlage liegt der Anwendungscode zunächst in `main.zyl`. Weitere Quelldateien kannst du bei Bedarf ergänzen und importieren.

zelyra.toml Projekt-Manifest

Dauerhafte Konfiguration: Name, Version, Capabilities (`uses Database`), Feature-Schalter (`[features] web = true`) und Host-Allowlists zur Absicherung gegen DNS-Rebinding.

locales/*.json i18n

Die erzeugte MariaDB-Vorlage enthält JSON-Übersetzungsdateien für Deutsch und Englisch.

.env & .env.example Geheimnisse & Absicherung

Die erzeugte Vorlage verwendet unter anderem `DATABASE_URL`, `MARIADB_PASSWORD` und `ZELYRA_DB_HOST_PORT`. Echte Zugangsdaten gehören nur in die lokale `.env`, niemals ins Repository. Die vollständige Liste steht in den erzeugten Dateien:

# 1. Nur Eigentümer darf lesen und schreiben:
chmod 600 .env
# 2. Rechte kontrollieren (muss 600 ausgeben):
stat -c '%a %n' .env
# 3. Prüfen, ob Git die Datei sicher ignoriert:
git check-ignore -v .env
docker-compose.mariadb.yml Container-Stack

Vorkonfigurierte MariaDB-Umgebung mit persistentem Speicher. Startet per 1-Befehl via `zelyra setup --all` ohne manuelle Datenbankinstallation.

06 / UPDATES, WARTUNG & DIAGNOSE

Zelyra aktuell halten.
Integrierter 1-Befehl Updater.

Der Befehl `zelyra update` aktualisiert die installierte CLI. Deine erzeugte Anwendung liegt in einem separaten Projektverzeichnis. Sichere das Projekt und prüfe die Release-Hinweise, bevor du Compiler-Versionen wechselst.

⚡ Methode 1 (Empfohlen): Der 1-Befehl CLI-Updater

Nutze den integrierten Befehl `zelyra update`, um auf neue Versionen zu prüfen und die CLI sofort zu aktualisieren:

# 1. Prüfen, ob eine neue Version verfügbar ist:
zelyra update --check

# 2. Automatisch auf die neueste Version aktualisieren:
zelyra update

# 3. Neue Version und Systemgesundheit verifizieren:
zelyra --version
zelyra doctor

🛠️ Methode 2: Aktualisierung bei Git-Clone / Quellcode

Wenn du Zelyra über das geklonte Git-Repository nutzt, ziehe den aktuellen Stand und starte den Installer:

cd zelyra && git pull origin main && ./install.sh
🛡️ Bleiben meine Projektdateien sicher?

Der Updater aktualisiert die installierte CLI. Sichere dein Projekt und prüfe vor einem Toolchain-Wechsel die Release-Notizen.

🩺 Zelyra Doctor Diagnose

Nach einem Update prüft `zelyra doctor` Quelldatei und Schema, ob Cargo und Docker Compose verfügbar sind, liest das Schema der konfigurierten Datenbank ohne Änderungen aus und testet, ob sich der gewählte lokale Webport binden lässt. Der Befehl diagnostiziert nicht den PATH-Eintrag von Zelyra und prüft weder den laufenden Docker-Daemon noch Socket- oder Dateirechte.

07 / DIE WICHTIGSTEN CLI-BEFEHLE

Die wichtigsten Befehle.
Auf einen Blick.

Das sind die am häufigsten genutzten Zelyra-Befehle für Entwicklung, Formatierung, Ausführung und Datenbank-Setup:

zelyra update

Aktualisiert die Zelyra-Toolchain automatisch auf die neueste Version (`--check` zur Prüfung).

zelyra run main.zyl

Prüft ein Zelyra-Programm und führt es mit dem ausgewählten Runtime-Backend aus.

zelyra check main.zyl

Schnelle Syntax- und Typprüfung ohne Programmausführung.

zelyra fmt main.zyl

Formatiert den Quellcode deterministisch und schützt SQL-/HTML-Blöcke.

zelyra new my-app --mariadb

Erstellt ein neues Projekt mit MariaDB- und Docker-Compose-Vorlage.

zelyra setup --all

Startet konfigurierte Datenbankdienste und führt die Einrichtungsschritte des ausgewählten Projekts aus.

zelyra setup --web

Startet den browserbasierten Einrichtungs-Assistenten.

zelyra db plan

Zeigt geplante Datenbankschema-Änderungen als SQL-Vorschau.

zelyra doctor

Prüft Quelldatei und statische Diagnosen, verfügbare Cargo- und Docker-Compose-Werkzeuge, das konfigurierte Datenbankschema ohne Änderungen und ob der gewählte lokale Webport verfügbar ist. Der Befehl prüft weder den PATH-Eintrag von Zelyra noch Docker-Daemon- oder Socket-Rechte.

08 / EDITOR & SYNTAX-HIGHLIGHTING

Offizielles Syntax-Highlighting.
Für VS Code, Cursor, Windsurf, JetBrains, Zed, Helix, Emacs, Notepad++ & Vim.

Zelyra liefert offizielle Syntax-Pakete, TextMate-Grammatiken und Major Modes für 8+ Entwicklungsumgebungen. Jede Karte enthält direkte Installations- und Verwendungsanleitungen:

⚡
VS Code, Cursor & Windsurf Offizielles VSIX-Paket (1-Klick)
Verwendung im Terminal:
code --install-extension zelyra.vsix
📄
JetBrains & Zed Universal .tmLanguage.json
Verwendung:
Settings → TextMate Bundles → (+) Ordner wählen
🌀
Helix Editor languages.toml Snippet
Konfigurations-Pfad:
~/.config/helix/languages.toml
🔮
GNU Emacs & Doom zelyra-mode.el (Major Mode)
In init.el einbinden:
(require 'zelyra-mode)
📝
Notepad++ userDefineLang_zelyra.xml
Import über Menü:
Sprachen → Eigene Sprache definieren → Import
💎
Sublime Text zelyra.sublime-syntax
Zielverzeichnis:
Packages/User/zelyra.sublime-syntax
🟢
Neovim & Vim zelyra.vim (Syntax & Filetype)
Neovim Syntax-Ordner:
~/.config/nvim/syntax/zelyra.vim
🐧
GNU Nano (Linux/Terminal) zelyra.nanorc (.nanorc Syntax)
In ~/.nanorc einfügen:
include "~/.nano/zelyra.nanorc"
1
Option A: 1-Klick-Installation mit .vsix (Empfohlen für VS Code, Cursor & Windsurf)

Lade zelyra.vsix oben herunter und installiere es in 2 Sekunden via Terminal oder über die VS Code Befehlspalette:

# VS Code CLI:
code --install-extension zelyra.vsix

# Cursor AI IDE:
cursor --install-extension zelyra.vsix

# Windsurf AI IDE:
windsurf --install-extension zelyra.vsix
2
Option B: Terminal-Einzeiler (macOS & Linux)

Lädt alle Dateien direkt herunter und aktiviert die Zelyra-Syntax in Windsurf oder VS Code:

mkdir -p ~/.vscode/extensions/zelyra/syntaxes && \
curl -s https://zelyra.eu/editors/package.json -o ~/.vscode/extensions/zelyra/package.json && \
curl -s https://zelyra.eu/editors/language-configuration.json -o ~/.vscode/extensions/zelyra/language-configuration.json && \
curl -s https://zelyra.eu/editors/zelyra.tmLanguage.json -o ~/.vscode/extensions/zelyra/syntaxes/zelyra.tmLanguage.json
1
JetBrains IDEs (IntelliJ IDEA, PhpStorm, WebStorm, PyCharm, RustRover, CLion)

Alle JetBrains-IDEs unterstützen TextMate-Bundles nativ ohne zusätzliche Plugins:

mkdir -p ~/.config/JetBrains/TextMate/zelyra/syntaxes && \
curl -s https://zelyra.eu/editors/zelyra.tmLanguage.json -o ~/.config/JetBrains/TextMate/zelyra/syntaxes/zelyra.tmLanguage.json
2
Zed Editor (macOS & Linux)

Lade die Universal-Grammatik in das Zed-Grammatikverzeichnis:

mkdir -p ~/.config/zed/grammars && \
curl -s https://zelyra.eu/editors/zelyra.tmLanguage.json -o ~/.config/zed/grammars/zelyra.tmLanguage.json
1
Helix Editor Konfiguration (~/.config/helix/languages.toml)

Helix ist ein moderner, extrem schneller Terminal-Editor in Rust. Füge diese Definition in deine `languages.toml` ein:

# Append to ~/.config/helix/languages.toml
mkdir -p ~/.config/helix
cat << 'EOF' >> ~/.config/helix/languages.toml

[[language]]
name = "zelyra"
scope = "source.zelyra"
injection-regex = "zelyra|zyl"
file-types = ["zyl", "zelyra"]
comment-token = "//"
block-comment-tokens = { start = "/*", end = "*/" }
indent = { tab-width = 4, unit = "    " }
roots = ["zelyra.toml", ".git"]

[language.auto-pairs]
'(' = ')'
'{' = '}'
'[' = ']'
'"' = '"'
'`' = '`'
EOF
1
GNU Emacs / Doom Emacs einrichten

Lade `zelyra-mode.el` in deinen Emacs Load-Path (z.B. `~/.emacs.d/lisp/`) und binde es in deine `init.el` ein:

# 1. Download zelyra-mode.el
mkdir -p ~/.emacs.d/lisp
curl -s https://zelyra.eu/editors/zelyra-mode.el -o ~/.emacs.d/lisp/zelyra-mode.el

# 2. Add to ~/.emacs.d/init.el:
(add-to-list 'load-path "~/.emacs.d/lisp/")
(require 'zelyra-mode)
1
Notepad++ Benutzerdefinierte Sprache (UDL)

Importiere die offizielle XML-Syntaxdefinition in Notepad++ in 3 schnellen Schritten:

  1. Lade zelyra-notepadplusplus.xml oben herunter.
  2. Öffne in Notepad++ das Menü Sprachen &rarr; Eigene Sprache definieren...
  3. Klicke auf Importieren... und wähle die heruntergeladene XML-Datei aus.
  4. Alle `.zyl`-Dateien werden sofort mit voller Farb- und Operator-Hervorhebung angezeigt!
1
Sublime Syntax-Datei kopieren (macOS & Linux)
# Linux
mkdir -p ~/.config/sublime-text/Packages/User
curl -s https://zelyra.eu/editors/zelyra.sublime-syntax -o ~/.config/sublime-text/Packages/User/zelyra.sublime-syntax

# macOS
mkdir -p ~/Library/Application\ Support/Sublime\ Text/Packages/User
curl -s https://zelyra.eu/editors/zelyra.sublime-syntax -o ~/Library/Application\ Support/Sublime\ Text/Packages/User/zelyra.sublime-syntax
1
Neovim & Klassisches Vim
mkdir -p ~/.config/nvim/syntax ~/.config/nvim/ftdetect
curl -s https://zelyra.eu/editors/zelyra.vim -o ~/.config/nvim/syntax/zelyra.vim
echo 'au BufRead,BufNewFile *.zyl setfiletype zelyra' > ~/.config/nvim/ftdetect/zelyra.vim
1
Nano Syntax-Registrierung
mkdir -p ~/.nano && \
curl -s https://zelyra.eu/editors/zelyra.nanorc -o ~/.nano/zelyra.nanorc && \
grep -qxF 'include "~/.nano/zelyra.nanorc"' ~/.nanorc 2>/dev/null || echo 'include "~/.nano/zelyra.nanorc"' >> ~/.nanorc
09 / SHELL-VERVOLLSTÄNDIGUNG

Tab-Vervollständigung.
Für Bash, Zsh & Fish.

Aktiviere sofortige Befehls- und Dateivervollständigung für die Zelyra CLI-Toolchain in deiner bevorzugten Shell:

🐚
Bash Completion zelyra-completion.bash
Installations-Befehl:
curl -s https://zelyra.eu/downloads/zelyra-completion.bash -o ~/.local/share/bash-completion/completions/zelyra
⚡
Zsh Completion zelyra-completion.zsh
Installations-Befehl:
curl -s https://zelyra.eu/downloads/zelyra-completion.zsh -o ~/.zsh/completion/_zelyra
🐟
Fish Completion zelyra-completion.fish
Installations-Befehl:
curl -s https://zelyra.eu/downloads/zelyra-completion.fish -o ~/.config/fish/completions/zelyra.fish
10 / CONTINUOUS INTEGRATION & QUALITÄTSSICHERUNG

Continuous Integration.
Automatisierte Invariantenprüfung & GitHub Actions.

Continuous Integration kann ausgewählte Zelyra-Prüfungen bei Änderungen automatisch ausführen. Sie beweist nicht allgemein die Korrektheit eines Projekts. Dieser Abschnitt stellt einen einfachen Ablauf vor und zeigt, wie du ihn an dein Projekt anpasst.

Was habe ich konkret davon? (Der praktische Nutzen im Alltag)

Continuous Integration ist kein Werkzeug nur für Großkonzerne – es spart jedem Entwickler täglich Zeit, Nerven und peinliche Fehler:

🛡️ 1. Ausgewählte Prüfungen in CI ausführen

CI kann bestimmte Probleme vor dem Zusammenführen einer Änderung erkennen. Die Abdeckung hängt von den eingerichteten Befehlen und implementierten Prüfungen ab.

🧮 2. Compiler- und Formatprüfungen

CI kann Compiler- und Formatprüfungen automatisiert ausführen. Welche Regeln geprüft werden, hängt von den verwendeten Befehlen und der aktuellen Implementierung ab.

💻 3. Schluss mit „Bei mir lief es aber!“

CI läuft in der für den Workflow eingerichteten Umgebung. Stimme deren Abhängigkeiten auf die geplante Betriebsumgebung ab.

👥 4. Mühelose Team-Zusammenarbeit

Richte passende Prüfungen für Pull Requests ein. Ein erfolgreicher Workflow bestätigt nur die Prüfungen, die tatsächlich ausgeführt wurden.

📐 5. Einheitlicher Team-Codestil

Keine Diskussionen mehr über Einrückungen oder Klammern: `zelyra fmt` stellt sicher, dass jeder Commit sauber und einheitlich formatiert ist.

⏱️ 6. Enorme Zeitersparnis

Automatisierte Prüfungen können wiederkehrende manuelle Arbeit verringern. Wähle passende Prüfungen für dein Projekt und werte die Ergebnisse aus.

Funktionsweise: Der 4-stufige Ablauf der CI-Pipeline

Sobald du Code pushst oder einen Pull Request erstellst, durchläuft GitHub Actions vollautomatisch diese vier Prüfphasen:

PHASE 01 ⚡

Git-Trigger-Event

Wird bei jedem `git push` auf `main` oder beim Erstellen/Aktualisieren eines Pull Requests ausgelöst.

on: [push, pull_request]
PHASE 02 📦

Festgelegte CLI installieren

Installiert das neueste veröffentlichte stabile Linux-Binary. Für diesen Ablauf muss Zelyra nicht aus dem Quellcode gebaut werden.

zelyra --version
PHASE 03 🔍

Quelldateien einzeln prüfen

Führt Formatter und Prüfer einzeln für jede `.zyl`-Datei aus. Geprüft werden nur tatsächlich implementierte Sprachmerkmale.

zelyra check <file.zyl>
PHASE 04 🧪

Anwendungsspezifische Tests

Ergänze Laufzeit- und Integrationstests mit den Testwerkzeugen deines Anwendungs-Stacks.

eigener Testrunner
🚀 Anleitung: So richtest du die CI in deinem Projekt ein (3 Schritte)

Die Einrichtung dauert weniger als 60 Sekunden. Folge einfach diesen drei Schritten in deinem lokalen Projektordner:

SCHRITT 1 1. Datei im Repository anlegen

Erstelle den Ordner `.github/workflows/` und lege die Datei `zelyra-ci.yml` an (oder lade die Vorlage unten herunter).

.github/workflows/zelyra-ci.yml
SCHRITT 2 2. Committen & Pushen

Füge die Workflow-Datei zu Git hinzu und übertrage sie auf GitHub:

git push origin main
SCHRITT 3 3. Live-Ergebnis auf GitHub sehen

Öffne dein Repository auf GitHub und klicke auf »Actions«, um den Live-Build-Status in Echtzeit zu verfolgen.

✓ Grüner Haken bei Erfolg
💡 Kann das wirklich jeder Benutzer nutzen? GitHub Actions kann für CI genutzt werden. Kontingente und Abrechnung hängen vom aktuellen GitHub-Tarif und der Runner-Konfiguration ab. Prüfe die aktuelle GitHub-Dokumentation, bevor du mit einem bestimmten Freikontingent planst.
🚀
GitHub Actions Workflow Template .github/workflows/zelyra-ci.yml (Vollständig kommentierte Vorlage)
Direkt-Download / Zielverzeichnis im Repository:
.github/workflows/zelyra-ci.yml
# .github/workflows/zelyra-ci.yml
# Checks Zelyra source with the published v0.3.0 compiler.
name: Zelyra CI

on:
  push:
    branches: [main, master]
  pull_request:
    branches: [main, master]

jobs:
  check:
    name: Check Zelyra v0.3.0 sources
    runs-on: ubuntu-latest

    steps:
      - name: Checkout repository
        uses: actions/checkout@v4

      - name: Install published Zelyra v0.3.0
        shell: bash
        run: |
          git clone --depth 1 --branch v0.3.0 https://github.com/sf1976/zelyra.git "$RUNNER_TEMP/zelyra-source"
          "$RUNNER_TEMP/zelyra-source/install.sh" --release v0.3.0 --root "$RUNNER_TEMP/zelyra-install" --no-path
          echo "$RUNNER_TEMP/zelyra-install/bin" >> "$GITHUB_PATH"

      - name: Verify installed version
        run: zelyra --version

      - name: Format and check each Zelyra source file
        shell: bash
        run: |
          mapfile -d '' zelyra_files < <(find . -type f -name '*.zyl' -not -path './.git/*' -print0)
          if ((${#zelyra_files[@]} == 0)); then
            echo "No .zyl source files found."
            exit 1
          fi
          for file in "${zelyra_files[@]}"; do
            zelyra fmt --check "$file"
            zelyra check "$file"
          done

# Zelyra v0.3.0 has no built-in test runner; add application-specific tests separately.

Dieser Workflow prüft Formatierung und unterstützte Syntax einzeln pro Datei. `zelyra check` beweist nicht die Fehlerfreiheit einer Anwendung. Ergänze Laufzeit- und Integrationstests mit den Testwerkzeugen deiner Anwendung.

🏷️ Tipp: Build-Status-Badge in deine README.md einbinden

Mache die Qualität deines Projekts für alle sichtbar mit dem offiziellen GitHub Actions Status-Badge:

[![Zelyra CI](https://github.com/DEIN-BENUTZERNAME/DEIN-REPO/actions/workflows/zelyra-ci.yml/badge.svg)](https://github.com/DEIN-BENUTZERNAME/DEIN-REPO/actions)
11 / PROBLEMBEHEBUNG & FAQS

Häufige Fragen.
Schnelle Lösungen.

Sollte bei der Installation oder Ausführung etwas klemmen, findest du hier die bewährten Lösungen:

1. `zelyra: command not found`

Das Verzeichnis ~/.local/bin ist noch nicht in deiner PATH-Umgebungsvariable eingetragen.

export PATH="$HOME/.local/bin:$PATH"

2. Docker: Permission denied

Folge der Linux-Installationsanleitung von Docker für deine Distribution. Mitglieder der Gruppe `docker` erhalten praktisch Root-Rechte auf dem Rechner.

Docker-Hinweise zu Berechtigungen

3. Port belegt (z. B. 3306)

Bei einem neu erzeugten Projekt wählt `zelyra setup` einen freien Host-Port. Eine vorhandene `.env` wird nicht still geändert: Setze `ZELYRA_DB_HOST_PORT` auf einen freien Port und starte den Schritt erneut. Bei einem belegten Web-Port verwende `ZELYRA_HOST_PORT`.

ZELYRA_DB_HOST_PORT=3307

4. Syntaxfehler bei Funktionsdefinition

Prüfe, ob Parameter typisiert sind und Rückgabetypen mit `-> Typ { ... }` deklariert wurden.

fn greet(name: String) -> String { ... }