# iris-core
Foundation kernel layer of the Iris Engine.
**Cross-platform windowing, async runtime, memory pool, IO and networking.**
## API
- `Context` — Tokio-based async runtime with `spawn()` / `block_on()`
- `Application` trait — desktop app lifecycle (initialize, update, exiting)
- `window::create_window()` — cross-platform window creation (winit desktop, WASM canvas)
- `BufferPool` — reusable byte buffer pool for GPU transfers and I/O
- `io` module — async file read/write, path resolution, directory walking
- `net` module — TCP helpers and minimal HTTP client
## Usage
```rust
use iris_core::{Context, Application, window::WindowConfig};
struct MyApp;
impl Application for MyApp {
fn initialize(&mut self, ctx: &Context, event_loop: &ActiveEventLoop) {
let window = iris_core::window::create_window(event_loop, WindowConfig::default());
}
}
iris_core::run_app(MyApp);
```
## Links
- [Repository](https://github.com/itszzl-sudo/iris)
- [Documentation](https://docs.rs/iris-core)
- [crates.io](https://crates.io/crates/iris-core)