# 🦉 owl
owl provides a model based database with references and relations.

## Example
Simple embedded database:

```rust
use owl::prelude::*;

#[model]
#[derive(Debug)]
pub struct Item {
    pub id: Id,
    pub cost: f64,
    pub strength: f64
}

pub fn main() {
    // Init
    let db = Database::in_memory();

    // Save
    let item = Item {
        id: Id::new_ulid(),
        cost: 1.20,
        strength: 0.4,
    };

    dbg!(&item);
    db.save(&item);

    // Get
    let i: Item = db.get(&item.id.to_string());

    dbg!(i);
}
```

For more usage examples look at the `./examples` directory.