# illuminate

*Perhaps one day browsers will run PHP in a sandbox. Until then, backend architecture still decides the outcome, and Illuminate still shines behind Paravel’s crown.*

> This project is an early-stage foundation and is not feature-complete yet.

`illuminate` is a Rust-native runtime core crate for service-oriented applications with explicit SQL backend selection for ORM-like domain layers.

Current release focuses on typed database entrypoints around `sqlx` with explicit backend intent:

- `DB::Mysql`
- `DB::Psql`
- `DB::Sqlite`


## Scope

`illuminate` intentionally provides **connection primitives only**.

Connection pooling is treated as a **higher-level concern** and should live in the application runtime/service layer where lifecycle, limits, and workload policy are known.

## Install

```toml
[dependencies]
illuminate = "0.1.0"
```

## Example

```rust
use illuminate::{connect, DB};

#[tokio::main]
async fn main() -> Result<(), illuminate::Error> {
    let _conn = connect(DB::Psql, "postgres://user:pass@127.0.0.1/app").await?;
    Ok(())
}
```


## Contributing

Contributions are welcome. Please read `CONTRIBUTING.md` before opening an issue or pull request.

## Non-affiliation

This project is independent and is not affiliated with Laravel LLC.
