@oasys/oecs 0.2.0 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -12,10 +12,18 @@ A fast, minimal archetype-based Entity Component System written in TypeScript.
12
12
  - **Topological system ordering** — systems within a phase are sorted by before/after constraints using Kahn's algorithm.
13
13
  - **Fixed timestep** — configurable fixed update loop with accumulator and interpolation alpha.
14
14
 
15
+ ## Installation
16
+
17
+ Using npm (or equivalent):
18
+
19
+ ```
20
+ npm install @oasys/oecs
21
+ ```
22
+
15
23
  ## Quick start
16
24
 
17
25
  ```ts
18
- import { ECS, SCHEDULE } from "@oasys/oecs-typed2";
26
+ import { ECS, SCHEDULE } from "@oasys/oecs";
19
27
 
20
28
  const world = new ECS();
21
29
 
@@ -74,6 +82,24 @@ function frame(dt: number) {
74
82
  }
75
83
  ```
76
84
 
85
+ ## World Options
86
+
87
+ `ECS` accepts an optional configuration object:
88
+
89
+ ```ts
90
+ const world = new ECS({
91
+ initial_capacity: 4096, // pre-allocate archetype storage (default: 1024, grows automatically)
92
+ fixed_timestep: 1 / 50, // fixed update interval in seconds (default: 1/60)
93
+ max_fixed_steps: 4, // cap fixed updates per frame to prevent spiral of death (default: 5)
94
+ });
95
+ ```
96
+
97
+ | Option | Type | Default | Description |
98
+ |---|---|---|---|
99
+ | `initial_capacity` | `number` | `1024` | Starting size for every archetype's backing typed arrays (entity IDs and all SoA component columns). Arrays double when exceeded — set this close to your expected entity count per archetype to avoid early re-allocations. |
100
+ | `fixed_timestep` | `number` | `1/60` | Interval (seconds) for `FIXED_UPDATE` systems. |
101
+ | `max_fixed_steps` | `number` | `5` | Maximum `FIXED_UPDATE` iterations per frame. |
102
+
77
103
  ## Components
78
104
 
79
105
  Components map field names to typed array tags. All field values are `number`, but storage uses the specified typed array (`Float64Array`, `Int32Array`, etc.) for cache-friendly iteration.
@@ -81,18 +107,18 @@ Components map field names to typed array tags. All field values are `number`, b
81
107
  ```ts
82
108
  // Record syntax — per-field type control
83
109
  const Position = world.register_component({ x: "f64", y: "f64" });
84
- const Health = world.register_component({ current: "i32", max: "i32" });
110
+ const Health = world.register_component({ current: "i32", max: "i32" });
85
111
 
86
112
  // Array shorthand — all fields default to "f64"
87
- const Vel = world.register_component(["vx", "vy"] as const);
113
+ const Vel = world.register_component(["vx", "vy"] as const);
88
114
 
89
115
  // Tags — no fields
90
- const IsEnemy = world.register_tag();
116
+ const IsEnemy = world.register_tag();
91
117
  ```
92
118
 
93
119
  Supported typed array tags: `"f32"`, `"f64"`, `"i8"`, `"i16"`, `"i32"`, `"u8"`, `"u16"`, `"u32"`.
94
120
 
95
- Add components individually or in batch (single archetype transition):
121
+ Add components individually or via `add_components` (single archetype transition):
96
122
 
97
123
  ```ts
98
124
  world.add_component(e, Position, { x: 10, y: 20 });
@@ -125,7 +151,11 @@ for (const arch of q) {
125
151
  }
126
152
 
127
153
  // Chaining
128
- const targets = world.query(Position).and(Health).not(Shield).or(IsEnemy, IsBoss);
154
+ const targets = world
155
+ .query(Position)
156
+ .and(Health)
157
+ .not(Shield)
158
+ .any_of(IsEnemy, IsBoss);
129
159
  ```
130
160
 
131
161
  See [docs/api/queries.md](docs/api/queries.md) for full API.
@@ -137,13 +167,19 @@ Systems are plain functions registered with a query and scheduled into lifecycle
137
167
  ```ts
138
168
  // With a typed query
139
169
  const moveSys = world.register_system(
140
- (q, ctx, dt) => { for (const arch of q) { /* ... */ } },
170
+ (q, ctx, dt) => {
171
+ for (const arch of q) {
172
+ /* ... */
173
+ }
174
+ },
141
175
  (qb) => qb.every(Pos, Vel),
142
176
  );
143
177
 
144
178
  // Without a query
145
179
  const logSys = world.register_system({
146
- fn(ctx, dt) { console.log("frame", dt); },
180
+ fn(ctx, dt) {
181
+ console.log("frame", dt);
182
+ },
147
183
  });
148
184
  ```
149
185
 
@@ -164,7 +200,8 @@ Resources are typed global singletons — time, input state, camera config.
164
200
 
165
201
  ```ts
166
202
  const Time = world.register_resource(["delta", "elapsed"] as const, {
167
- delta: 0, elapsed: 0,
203
+ delta: 0,
204
+ elapsed: 0,
168
205
  });
169
206
 
170
207
  // Write
@@ -172,7 +209,7 @@ world.set_resource(Time, { delta: dt, elapsed: total });
172
209
 
173
210
  // Read — scalar values, not arrays
174
211
  const time = world.resource(Time);
175
- time.delta; // number
212
+ time.delta; // number
176
213
  time.elapsed; // number
177
214
  ```
178
215
 
@@ -196,7 +233,9 @@ for (let i = 0; i < dmg.length; i++) {
196
233
  // Signals carry no data — just a count
197
234
  const OnReset = world.register_signal();
198
235
  ctx.emit(OnReset);
199
- if (ctx.read(OnReset).length > 0) { /* fired */ }
236
+ if (ctx.read(OnReset).length > 0) {
237
+ /* fired */
238
+ }
200
239
  ```
201
240
 
202
241
  See [docs/api/events.md](docs/api/events.md) for full API.
@@ -218,15 +257,15 @@ See [docs/api/refs.md](docs/api/refs.md) for full API.
218
257
 
219
258
  Seven lifecycle phases, executed in order:
220
259
 
221
- | Phase | When | Use case |
222
- |---|---|---|
223
- | `PRE_STARTUP` | Once, before startup | Resource loading |
224
- | `STARTUP` | Once | Initial entity spawning |
225
- | `POST_STARTUP` | Once, after startup | Validation |
226
- | `FIXED_UPDATE` | Every tick (fixed dt) | Physics, simulation |
227
- | `PRE_UPDATE` | Every frame, first | Input handling |
228
- | `UPDATE` | Every frame | Game logic |
229
- | `POST_UPDATE` | Every frame, last | Rendering, cleanup |
260
+ | Phase | When | Use case |
261
+ | -------------- | --------------------- | ----------------------- |
262
+ | `PRE_STARTUP` | Once, before startup | Resource loading |
263
+ | `STARTUP` | Once | Initial entity spawning |
264
+ | `POST_STARTUP` | Once, after startup | Validation |
265
+ | `FIXED_UPDATE` | Every tick (fixed dt) | Physics, simulation |
266
+ | `PRE_UPDATE` | Every frame, first | Input handling |
267
+ | `UPDATE` | Every frame | Game logic |
268
+ | `POST_UPDATE` | Every frame, last | Rendering, cleanup |
230
269
 
231
270
  ```ts
232
271
  world.add_systems(SCHEDULE.UPDATE, moveSys, physicsSys);
@@ -267,6 +306,8 @@ pnpm build # vite library build
267
306
  pnpm tsc --noEmit # type check
268
307
  ```
269
308
 
270
- ## Architecture
309
+ ## Guides
271
310
 
272
- See [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md) for internal design details.
311
+ - [Getting Started](docs/GETTING_STARTED.md) step-by-step tutorial
312
+ - [Best Practices](docs/BEST_PRACTICES.md) — performance tips and patterns
313
+ - [Architecture](docs/ARCHITECTURE.md) — internal design details
package/dist/ecs.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"ecs.d.ts","sourceRoot":"","sources":["../src/ecs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ecs.d.ts","sourceRoot":"","sources":["../src/ecs.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../src/query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../src/query.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oasys/oecs",
3
- "version": "0.2.0",
3
+ "version": "0.2.1",
4
4
  "description": "Archetype-based Entity Component System",
5
5
  "type": "module",
6
6
  "exports": {
@@ -31,7 +31,7 @@
31
31
  },
32
32
  "repository": {
33
33
  "type": "git",
34
- "url": "https://github.com/oasys-works/oecs.git"
34
+ "url": "git+https://github.com/oasys-works/oecs.git"
35
35
  },
36
36
  "homepage": "https://github.com/oasys-works/oecs#readme",
37
37
  "bugs": {