https://github.com/zewenn/loom
loom is a declarative, entity component system based game engine, written in zig.
https://github.com/zewenn/loom
declarative entity-component-system game-engine zig
Last synced: 11 months ago
JSON representation
loom is a declarative, entity component system based game engine, written in zig.
- Host: GitHub
- URL: https://github.com/zewenn/loom
- Owner: zewenn
- License: apache-2.0
- Created: 2025-06-06T10:10:34.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-06-11T11:20:50.000Z (about 1 year ago)
- Last Synced: 2025-06-19T00:04:52.121Z (about 1 year ago)
- Topics: declarative, entity-component-system, game-engine, zig
- Language: Zig
- Homepage:
- Size: 2.1 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
The declarative, ECS-based game engine, written in zig.
---
**loom** wraps [Not-Nik](https://github.com/Not-Nik)'s [raylib-zig](https://github.com/Not-Nik/raylib-zig) and uses [johan0A](https://github.com/johan0A)'s [clay-zig-bindings](https://github.com/johan0A/clay-zig-bindings) for UI.
> [!important]
> This project uses zig version `0.14.0` and the latest version of the bindings.
The engine aims to provide a declarative interface for game development. We try to provide a _"code only Unity"_, where you only have to configure scenes and entities with only a few lines of code.
## Install loom
Adding loom is easy, just follow these steps:
1. Fetch the package.
```sh
zig fetch --save git+https://github.com/zewenn/loom#stable
```
2. Get the module.
```zig
const loom_dep = b.dependency("loom", .{
.target = target,
.optimize = optimize,
});
const loom_mod = loom_dep.module("loom");
```
3. Add the import
```zig
target_module.addImport("loom", loom_mod);
```
4. You are ready to go, import loom into you project:
```zig
const loom = @import("loom");
```