coyote-ecs

Coyote ECS Documentation

Welcome to the Coyote ECS documentation! Coyote ECS is a fast and simple Entity Component System (ECS) written in Zig.

What is Coyote ECS?

Coyote ECS is a lightweight, high-performance Entity Component System designed for Zig applications. It provides a simple yet powerful way to manage game objects, simulations, and other entity-based systems.

Key Features

Quick Example

const std = @import("std");
const ecs = @import("coyote-ecs");

// Define your components
pub const Components = struct {
    pub const Position = struct {
        x: f32 = 0,
        y: f32 = 0,
    };
};

// Create a world and entities
var world = try World.create();
defer world.deinit();

var entity = try world.entities.create();
var position = try world.components.create(Components.Position);
try entity.attach(position, Components.Position{ .x = 0, .y = 0 });

Getting Started

Check out our Getting Started Guide to begin using Coyote ECS in your project.

Contributing

We welcome contributions! Please see our Contributing Guide for details on how to get involved.

License

Coyote ECS is licensed under the same terms as Zig. See the LICENSE file for details.