AuDB - Application Database Compiler
AuDB is a compile-time framework that transforms database queries and schemas into optimized, type-safe Rust applications with embedded databases.
Core Concepts
- Gold Files (.au): Universal container format for queries, schemas, and config
- Compile-Time: All parsing, validation, and optimization at build time
- Multi-Language: Support HyperQL, SQL, Cypher, and more
- Type-Safe: Compile-time type checking for queries and data
- Single Binary: Database + queries + server in one executable
Usage
use audb::Project;
// Load all gold files from a directory
let project = Project::from_directory("./gold")?;
// Validate the project
project.validate()?;
// Generate Rust code (typically done in build.rs)
let code = project.generate_code()?;
Module Organization
- [
parser]: Gold file parser (.auformat) - [
model]: Project model (schemas, queries, config) - [
schema]: Schema system supporting multiple formats - [
validation]: Compile-time validation and type checking - [
project]: Project management and file discovery