Clearly typed.
Checked early.
Explicit types, immutable values and visible optional data help catch mistakes during checks.
name: String?
match name {
With Zelyra you define data models, business rules and web pages in a clear, statically typed language. Built in Rust.
Zelyra connects data models, types, validation, SQL and interfaces. From a clear description, proven building blocks for your application emerge step by step.
Understand the principle →The central schema defining tables, constraints and types.
table customers { ... }
Nominal types and contracts help describe and check valid states in supported cases.
type UserId = Id
The experimental runtime can generate routes and forms with schema-aware validation for supported declarations.
page "/customers" { ... }
Explore the database tooling available in the current experimental release.
query { select id, name }
Explicit types, immutable values and visible optional data help catch mistakes during checks.
name: String?
match name {
One schema can become the foundation for domain types, SQL, forms, APIs and CRUD.
Begin with a small program and expand it step by step into a full web application.
Open learning path →Zelyra is an experimental language project for database-backed web applications. Its direction is to make data models, database work, and web features easier to describe and inspect. The current 0.3.0 release is an early prototype: its checks cover only implemented cases and do not prove an application correct or production-ready.
The compiler checks supported language constructs and reports detected issues. These checks are limited in scope and are not a formal proof that a program is correct.
The compiler is open source and projects can be developed locally. The current runtime and database support are still evolving; review the release notes for the exact scope.
Code that explicitly states what it expects and delivers. Explicit types, readable schemas, and verifiable contracts instead of hidden magic.
The project explores a more connected workflow for data models and web applications. Which parts are available depends on the feature and template used.
The compiler is written in Rust. That implementation choice is not a benchmark, a production-readiness certification, or a guarantee about application behavior.
Local development is possible, and MariaDB is the primary database target in the current project. Check the documentation for supported workflows and their limitations.
Development note: The principles and architecture outlined here describe the definitive goal and vision of Zelyra, not yet its full current completion. The language and ecosystem are actively being developed milestone by milestone towards this standard.
Four accessible steps guide you from your first program to a database-backed web application.
Zelyra code describes clearly what values a function expects and what result it delivers.
View example →fn fibonacci(n: Int) -> Int {
if n <= 1 {
return n
}
return fibonacci(n - 1) +
fibonacci(n - 2)
}
→ 55
Here is a small Zelyra page. Change the code in the editor or the parameter in the route bar and watch how it turns into a safe HTML response in real time.
The CLI can run as a standalone binary. Database-backed applications still need configured services such as MariaDB.
Clones the repository and builds the CLI from source. Build time and application performance depend on your system and workload.
$ git clone https://github.com/sf1976/zelyra.git
$ cd zelyra && ./install.sh
zelyra check fibonacci.zyl
Builds and starts the generated web application and MariaDB services using the project’s Compose file.
$ zelyra new my-app --mariadb
$ cd my-app && docker compose --env-file .env -f docker-compose.mariadb.yml up -d --build
docker compose --env-file .env -f docker-compose.mariadb.yml exec web zelyra db setup main.zyl
Explore the handbook, inspect the open-source compiler on GitHub or start with our 5-minute interactive tutorial.
Stefan Siedelmann
Neuenhöfer Str. 20
34355 Staufenberg
Deutschland
Phone: 01523 3790716
E-Mail: stefan@siedelmann.com