@latticexyz/recs v2.0.7
recs - Reactive Entity Component System
recs
is built with reactivity in mind.
Components
and Queries
expose an update$
stream, that Systems
can react to.
To build some fundamental intuition about ECS, have a look at our MUD ECS introduction.
recs
is seamlessly integrated with the other MUD libraries, but can be used independently.
For detailed documentation, check out mud.dev/recs.
Features
- Reactive components, queries, and systems
- Powerful queries, including advanced indirect relationship queries
- Seamless integration with other MUD libraries and services
- Simple, declarative API
- Ultra high performance
- TypeScript support
Example
import {
createWorld,
defineComponent,
createEntity,
withValue,
defineSystem,
Has,
getComponentValue,
setComponent,
} from "@latticexyz/recs";
// Create a new World
const World = createWorld();
// Define a couple components
const Position = defineComponent(world, { x: Type.Number, y: Type.Number });
const Movable = defineComponent(world, { speed: Type.Number });
// Create a new entity
const entity1 = createEntity(world, [withValue(Position, { x: 0, y: 0 }), withValue(Movable, { speed: 10 })]);
// Define a system that reacts to updates of movable entities with a position
defineSystem(world, [Has(Position), Has(Movable)], (update) => {
console.log("Entity", update.entity, "moved to", update.value);
// ... do stuff, like rendering the entity on the screen, etc
});
// Move the entity around
setInterval(() => {
const currentPosition = getComponentValue(Position, entity1);
const newPosition = { x: position.x + 1, y: position.y + 1 };
setComponent(Position, entity1, newPosition);
}, 1000);
Acknowledgements
- Syntax originally inspired by bitECS
2 days ago
2 days ago
2 days ago
2 days ago
2 days ago
3 days ago
5 days ago
6 days ago
7 days ago
7 days ago
7 days ago
8 days ago
8 days ago
8 days ago
9 days ago
9 days ago
9 days ago
10 days ago
10 days ago
11 days ago
10 days ago
10 days ago
11 days ago
11 days ago
11 days ago
10 days ago
10 days ago
11 days ago
10 days ago
12 days ago
12 days ago
13 days ago
13 days ago
15 days ago
15 days ago
14 days ago
14 days ago
15 days ago
14 days ago
16 days ago
16 days ago
16 days ago
16 days ago
15 days ago
14 days ago
14 days ago
15 days ago
14 days ago
15 days ago
16 days ago
15 days ago
15 days ago
14 days ago
15 days ago
15 days ago
15 days ago
16 days ago
15 days ago
15 days ago
15 days ago
14 days ago
15 days ago
15 days ago
15 days ago
18 days ago
18 days ago
18 days ago
18 days ago
21 days ago
21 days ago
21 days ago
21 days ago
22 days ago
22 days ago
22 days ago
22 days ago
23 days ago
23 days ago
23 days ago
23 days ago
23 days ago
23 days ago
23 days ago
23 days ago
23 days ago
23 days ago
23 days ago
24 days ago
24 days ago
24 days ago
24 days ago
24 days ago
24 days ago
24 days ago
24 days ago
24 days ago
24 days ago
24 days ago
24 days ago
24 days ago
24 days ago
25 days ago
25 days ago
25 days ago
25 days ago
26 days ago
26 days ago
29 days ago
28 days ago
28 days ago
27 days ago
28 days ago
29 days ago
28 days ago
28 days ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
8 months ago
9 months ago
8 months ago
8 months ago
10 months ago
5 months ago
7 months ago
8 months ago
7 months ago
9 months ago
7 months ago
9 months ago
9 months ago
8 months ago
11 months ago
11 months ago
7 months ago
6 months ago
7 months ago
9 months ago
8 months ago
6 months ago
9 months ago
9 months ago
7 months ago
10 months ago
6 months ago
9 months ago
8 months ago
6 months ago
9 months ago
8 months ago
7 months ago
8 months ago
8 months ago
8 months ago
8 months ago
9 months ago
7 months ago
7 months ago
6 months ago
8 months ago
10 months ago
8 months ago
10 months ago
11 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
5 months ago
6 months ago
10 months ago
9 months ago
8 months ago
9 months ago
7 months ago
6 months ago
6 months ago
5 months ago
7 months ago
6 months ago
10 months ago
8 months ago
7 months ago
10 months ago
7 months ago
8 months ago
8 months ago
8 months ago
8 months ago
9 months ago
7 months ago
6 months ago
6 months ago
9 months ago
6 months ago
8 months ago
6 months ago
6 months ago
6 months ago
6 months ago
8 months ago
6 months ago
9 months ago
8 months ago
7 months ago
7 months ago
9 months ago
5 months ago
10 months ago
9 months ago
10 months ago
7 months ago
10 months ago
8 months ago
7 months ago
7 months ago
10 months ago
8 months ago
8 months ago
6 months ago
7 months ago
7 months ago
9 months ago
7 months ago
7 months ago
8 months ago
7 months ago
8 months ago
8 months ago
6 months ago
10 months ago
5 months ago
8 months ago
7 months ago
7 months ago
9 months ago
9 months ago
7 months ago
6 months ago
8 months ago
6 months ago
7 months ago
8 months ago
5 months ago
8 months ago
8 months ago
9 months ago
9 months ago
5 months ago
10 months ago
8 months ago
10 months ago
10 months ago
7 months ago
6 months ago
8 months ago
8 months ago
8 months ago
6 months ago
6 months ago
8 months ago
5 months ago
8 months ago
8 months ago
6 months ago
8 months ago
8 months ago
6 months ago
9 months ago
7 months ago
6 months ago
8 months ago
8 months ago
8 months ago
8 months ago
9 months ago
8 months ago
9 months ago
6 months ago
9 months ago
9 months ago
8 months ago
9 months ago
7 months ago
8 months ago
10 months ago
9 months ago
9 months ago
8 months ago
9 months ago
6 months ago
7 months ago
8 months ago
7 months ago
7 months ago
7 months ago
7 months ago
5 months ago
8 months ago
8 months ago
6 months ago
10 months ago
6 months ago
9 months ago
6 months ago
8 months ago
8 months ago
7 months ago
7 months ago
8 months ago
8 months ago
9 months ago
7 months ago
6 months ago
9 months ago
7 months ago
8 months ago
10 months ago
10 months ago
6 months ago
6 months ago
7 months ago
7 months ago
8 months ago
7 months ago
10 months ago
6 months ago
8 months ago
9 months ago
9 months ago
9 months ago
8 months ago
8 months ago
8 months ago
9 months ago
8 months ago
6 months ago
8 months ago
8 months ago
9 months ago
6 months ago
8 months ago
7 months ago
8 months ago
7 months ago
6 months ago
7 months ago
6 months ago
5 months ago
7 months ago
9 months ago
6 months ago
9 months ago
8 months ago
9 months ago
9 months ago
10 months ago
7 months ago
7 months ago
8 months ago
6 months ago
8 months ago
5 months ago
7 months ago
7 months ago
8 months ago
6 months ago
8 months ago
9 months ago
6 months ago
9 months ago
9 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
9 months ago
8 months ago
7 months ago
7 months ago
7 months ago
7 months ago
6 months ago
5 months ago
6 months ago
8 months ago
8 months ago
8 months ago
9 months ago
5 months ago
9 months ago
10 months ago
9 months ago
9 months ago
6 months ago
7 months ago
6 months ago
8 months ago
10 months ago
8 months ago
10 months ago
9 months ago
6 months ago
8 months ago
8 months ago
10 months ago
8 months ago
5 months ago
7 months ago
7 months ago
5 months ago
7 months ago
6 months ago
6 months ago
8 months ago
8 months ago
8 months ago
7 months ago
8 months ago
8 months ago
9 months ago
9 months ago
7 months ago
9 months ago
6 months ago
7 months ago
5 months ago
7 months ago
7 months ago
6 months ago
6 months ago
8 months ago
8 months ago
8 months ago
10 months ago
7 months ago
8 months ago
8 months ago
10 months ago
6 months ago
6 months ago
8 months ago
7 months ago
8 months ago
7 months ago
9 months ago
9 months ago
7 months ago
8 months ago
7 months ago
9 months ago
7 months ago
9 months ago
10 months ago
7 months ago
8 months ago
8 months ago
9 months ago
8 months ago
9 months ago
8 months ago
10 months ago
7 months ago
6 months ago
6 months ago
9 months ago
8 months ago
6 months ago
7 months ago
6 months ago
6 months ago
9 months ago
9 months ago
10 months ago
6 months ago
8 months ago
6 months ago
6 months ago
8 months ago
9 months ago
8 months ago
7 months ago
8 months ago
6 months ago
8 months ago
8 months ago
8 months ago
8 months ago
9 months ago
6 months ago
9 months ago
8 months ago
6 months ago
7 months ago
6 months ago
9 months ago
10 months ago
9 months ago
6 months ago
8 months ago
6 months ago
9 months ago
8 months ago
10 months ago
8 months ago
9 months ago
6 months ago
8 months ago
7 months ago
9 months ago
8 months ago
10 months ago
5 months ago
8 months ago
10 months ago
6 months ago
8 months ago
8 months ago
6 months ago
8 months ago
10 months ago
7 months ago
6 months ago
8 months ago
9 months ago
9 months ago
7 months ago
8 months ago
6 months ago
8 months ago
8 months ago
8 months ago
8 months ago
7 months ago
8 months ago
10 months ago
8 months ago
8 months ago
8 months ago
8 months ago
9 months ago
8 months ago
9 months ago
8 months ago
6 months ago
8 months ago
10 months ago
9 months ago
9 months ago
8 months ago
9 months ago
9 months ago
8 months ago
9 months ago
7 months ago
6 months ago
8 months ago
8 months ago
10 months ago
7 months ago
8 months ago
9 months ago
6 months ago
8 months ago
7 months ago
8 months ago
7 months ago
8 months ago
8 months ago
9 months ago
8 months ago
8 months ago
8 months ago
9 months ago
7 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
12 months ago
12 months ago
11 months ago
12 months ago
12 months ago
11 months ago
12 months ago
12 months ago
12 months ago
11 months ago
12 months ago
11 months ago
12 months ago
12 months ago
11 months ago
12 months ago
11 months ago
12 months ago
12 months ago
11 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
11 months ago
12 months ago
11 months ago
12 months ago
11 months ago
12 months ago
11 months ago
12 months ago
11 months ago
12 months ago
11 months ago
12 months ago
11 months ago
12 months ago
11 months ago
12 months ago
11 months ago
12 months ago
12 months ago
11 months ago
11 months ago
12 months ago
11 months ago
12 months ago
11 months ago
12 months ago
11 months ago
12 months ago
11 months ago
12 months ago
11 months ago
12 months ago
11 months ago
12 months ago
11 months ago
12 months ago
12 months ago
11 months ago
12 months ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
1 year ago
12 months ago
1 year ago
12 months ago
12 months ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
1 year ago
1 year ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
12 months ago
1 year ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
12 months ago
1 year ago
11 months ago
1 year ago
12 months ago
1 year ago
1 year ago
1 year ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago