-
Notifications
You must be signed in to change notification settings - Fork 0
Getting Started
Willkommen bei VelinScript! Diese Anleitung führt dich durch die ersten Schritte.
- Rust 1.70+ (für Compiler-Entwicklung)
- Git
# Repository klonen
git clone https://github.com/SkyliteDesign/velinscript.git
cd velinscript
# Compiler bauen
cd compiler
cargo build --release
# Binary ist in: compiler/target/release/velin-compiler
# Optional: In PATH einbinden
export PATH=$PATH:$(pwd)/target/release# Auf Linux/macOS:
curl -sSL https://velisch.dev/install | sh
# Auf Windows (PowerShell):
curl -sSL https://velisch.dev/install | bash# Beide Befehle funktionieren:
velin init my-first-api
# oder
velin new my-first-api
cd my-first-apiDies erstellt:
-
main.velin- Hauptdatei -
README.md- Projekt-Dokumentation
Öffne main.velin und schreibe:
@GET("/api/hello")
fn hello(): string {
return "Hello, VelinScript! 🚀";
}
velin compile -i main.velin -o main.rsDies erstellt main.rs mit dem kompilierten Rust-Code.
Optional: Andere Ziel-Sprachen
Du kannst auch PHP oder Python Code generieren:
# Für PHP
velin compile -i main.velin -o main.php --target php
# Für Python
velin compile -i main.velin -o main.py --target pythonvelin check -i main.velinPrüft den Code auf Type-Fehler.
let name = "John"; // Type Inference: string
let age = 30; // Type Inference: number
let active: boolean = true; // Expliziter Typ
let mut counter = 0; // Mutable Variable
fn greet(name: string): string {
return "Hello, " + name;
}
// Ohne Parameter
fn getVersion(): string {
return "0.1.0";
}
// Ohne Rückgabewert
fn printMessage(msg: string): void {
// ...
}
struct User {
id: string,
name: string,
email: string,
}
@GET("/api/users/:id")
fn getUser(id: string): User {
return db.find(User, id);
}
@POST("/api/users")
fn createUser(name: string, email: string): User {
let user = User {
id: generateId(),
name: name,
email: email,
};
return db.save(user);
}
- Tutorial 1: Basics - tutorial-1-basics.md
- Tutorial 2: APIs - tutorial-2-apis.md
- Tutorial 3: Security - tutorial-3-security.md
- Tutorial 4: Database - tutorial-4-database.md
- Tutorial 5: Validation - tutorial-5-validation.md
- Tutorial 6: Authentication - tutorial-6-authentication.md
- Tutorial 7: ML Integration - tutorial-7-ml.md
- Tutorial 8: Intelligence - tutorial-8-intelligence.md
- Auto-Import Management - auto-imports.md
-
AutoFix Engine - Automatische Fehlerkorrektur mit
--autofixFlag - VelinAutoDoc - Automatische Dokumentationsgenerierung
- VelinAutoTest - Automatische Test-Generierung
- VelinInsight - Code-Analyse und Qualitätsprüfung
- VelinPipeline - Automatische Performance-Optimierung
- Dead Code Detector - ../tools/dead-code-detector.md
- API Documentation Generator - ../tools/api-doc-generator.md
- Bibliotheks-Generator - ../tools/library-generator.md ✅ (Neu in 2.7)
- VS Code Extension - ../tools/vscode-extension.md ✅
-
Package Manager - Siehe
tools/package-manager/README.md
Siehe examples/ für vollständige Beispiel-Projekte.
Empfohlene Beispiele:
- 01-hello-api - Einfaches Einstiegsbeispiel
- 02-llm-chat - LLM-Integration
- 05-ultimate-showcase - Alle Features 2.5 (VelinAutoDoc, VelinPipeline, @Flow) ✅
- Custom Recommender - Production-Ready Recommendation System
- Quick Start Guide - 5 Minuten bis zur ersten API
- API-Keys Setup - 🔑 API-Keys konfigurieren
- Language Specification - Vollständige Sprachspezifikation
- API Documentation - API-Referenz
- Dokumentations-Übersicht - Alle Dokumente
- GitHub Issues - Fragen und Bug Reports
Stelle sicher, dass der Compiler gebaut wurde und im PATH ist:
cd compiler
cargo build --release
export PATH=$PATH:$(pwd)/target/releaseHinweis: Der Binary heißt velin-compiler (oder velin-compiler.exe auf Windows), aber der Befehl ist velin. Stelle sicher, dass der Binary im PATH ist oder erstelle einen Alias/Symlink.
Der VelinScript Compiler bietet umfassende Fehlerbehandlung mit intelligenten Lösungsvorschlägen:
Nutze velin check um Type-Fehler zu finden:
velin check -i main.velinBeispiel-Ausgabe:
❌ Type error: Type mismatch at line 12, column 15
📁 Datei: main.velin
📍 Position: Zeile 12, Spalte 15
💡 Did you mean: 'length'?
💡 Beispiel für explizite Typ-Annotation:
let x: number = 42;
let name: string = "John";
🔧 Lösungsvorschläge:
- Prüfe die Typen deiner Variablen
- Nutze explizite Typ-Annotationen bei Unsicherheit
- Siehe: docs/guides/tutorial-1-basics.md
Prüfe die Syntax in der Language Specification.
Beispiel-Ausgabe:
❌ Parse error: Unexpected token at line 5, column 10
📁 Datei: main.velin
📍 Position: Zeile 5, Spalte 10
💡 Did you mean: 'fn'?
💡 Tip: Function declarations use 'fn', not 'function'
Beispiel: fn myFunction(): string { return "hello"; }
🔧 Lösungsvorschläge:
- Prüfe auf fehlende oder überflüssige Klammern
- Nutze 'velin check --autofix' für automatische Korrekturen
- Siehe: docs/language/specification.md
Der Compiler bietet jetzt intelligente Lösungsvorschläge für alle Fehlertypen:
- CodeGen Errors - Code-Generierungsfehler mit spezifischen Hinweisen
- IO Errors - Datei-/IO-Fehler mit Berechtigungs- und Pfad-Hinweisen
- Validation Errors - Validierungsfehler mit Feld-spezifischen Tipps
- Config Errors - Konfigurationsfehler mit JSON-Syntax-Hilfen
- Internal Errors - Interne Compiler-Fehler mit Bug-Report-Hinweisen
Siehe: Fehlerbehandlung & Lösungsvorschläge ✅ (Neu in 3.1.0) für vollständige Dokumentation.
- Compiler Architecture
- Pass-Verlauf
- Type Inference
- Code Ordering
- IR Representation
- Borrow Checker
- Code Generation
- Multi-Target Compilation
- Module Resolution
- Framework Integration
- Parallelization
- AI Compiler Passes
- Prompt Optimizer
- System Generation
- Basics
- APIs
- Security
- Database
- Validation
- Authentication
- ML/LLM
- Intelligence Features
- Type Inference
- ML Training
- Pattern Matching
- Closures
- Collections
- HTTP Client
- String Interpolation
- Debugger
- Vektor-Datenbanken
- CLI Reference
- API Keys Setup
- Advanced
- Backend
- Security Best Practices
- AI/ML
- Auto Imports
- Plugin Development