Packages
The Web Engine Dev ecosystem is organized into categories of composable packages. Each package can be used independently or combined with others.
Core
Layer 0-2 | 12 packages
- @web-engine-dev/change-detection — Proxy-based mutation tracking for web-engine-dev
- @web-engine-dev/ecs — A high-performance, feature-rich Entity Component System (ECS) library for TypeScript/JavaScript. Built for game engines and simulations with support for parallel execution, SharedArrayBuffer, worker threads, and advanced query systems.
- @web-engine-dev/events — Double-buffered event system with frame lifecycle for web-engine-dev
- @web-engine-dev/hierarchy — Parent-child relationships and propagation for web-engine-dev
- @web-engine-dev/math — High-performance vector, matrix, and quaternion math library for game engines. Immutable by design.
- @web-engine-dev/reflection — Runtime type introspection and metadata system for game engines. Supports decorators, property inspection, and editor integration.
- @web-engine-dev/resources — Global singleton/resource management for web-engine-dev
- @web-engine-dev/scheduler — System ordering and parallel execution for web-engine-dev
- @web-engine-dev/scripting — Runtime scripting layer for gameplay logic with lifecycle hooks
- @web-engine-dev/serialization — Schema-based binary and JSON serialization for game engines. Supports versioning, upgrades, and circular reference handling.
- @web-engine-dev/splines — Spline curves, paths, and follower system for web-engine-dev
- @web-engine-dev/time — Time management, fixed timestep, and timers for web-engine-dev
Rendering
Layer 6-7 | 12 packages
- @web-engine-dev/gizmos — Interactive 3D manipulation gizmos, debug visualization, and custom gizmo framework
- @web-engine-dev/gltf — glTF/GLB loader for web-engine-dev renderer
- @web-engine-dev/particles — GPU-accelerated particle system for WebGPU/WebGL
- @web-engine-dev/render-graph — WebGPU/WebGL render graph system for organizing render passes
- @web-engine-dev/renderer — Scene-graph agnostic web rendering library with full render graph, materials, lighting, and post-processing. WebGPU-first renderer.
- @web-engine-dev/shader-compiler — WGSL shader preprocessor and WGSL-to-GLSL transpiler for the web engine renderer
- @web-engine-dev/sprites — 2D sprite and spritesheet rendering with animation, atlas packing, and batching
- @web-engine-dev/terrain — CDLOD terrain rendering with PBR texture splatting, GPU sculpting, vegetation scattering, physics integration, and streaming support.
- @web-engine-dev/text-rendering — High-quality text rendering using Signed Distance Fields (SDF) with support for rich text, RTL, and multiple fonts
- @web-engine-dev/tilemap — Tile-based map rendering with chunked storage, auto-tiling, and isometric support
- @web-engine-dev/ui — Game UI framework with widgets, layouts, styling, and interaction support
- @web-engine-dev/vfx — Visual effects system for trails, lines, decals, and screen effects
Systems
Layer 3-5 | 17 packages
- @web-engine-dev/animation — Animation system with skeletal animation, blending, state machines, and IK for web-engine-dev
- @web-engine-dev/audio — Game audio engine with spatial audio, buses, and adaptive music for web-engine-dev
- @web-engine-dev/character — Character movement controllers for web-engine-dev - platformer, first-person, third-person, and top-down
- @web-engine-dev/cloth — Position-based dynamics cloth simulation for web-engine-dev
- @web-engine-dev/destruction — Destruction and fracture system with Voronoi decomposition, structural integrity, and debris management
- @web-engine-dev/gesture — Advanced input gesture recognition for web-engine-dev
- @web-engine-dev/input — Unified input system with action mapping for web-engine-dev
- @web-engine-dev/matchmaking — Matchmaking and lobby system for multiplayer games
- @web-engine-dev/netcode — Game networking library with state sync, prediction, lag compensation, and rollback
- @web-engine-dev/netcode-ecs — Shared simulation architecture bridging ECS and netcode for write-once multiplayer game logic
- @web-engine-dev/netcode-server — Server-side multiplayer game framework for @web-engine-dev
- @web-engine-dev/physics2d — 2D physics engine with collision detection, rigid body dynamics, and constraints for web-engine-dev
- @web-engine-dev/physics2d-rapier — Rapier 2D physics adapter for web-engine-dev - high-performance WASM physics backend
- @web-engine-dev/physics3d — Reference 3D physics implementation (use physics3d-rapier for production)
- @web-engine-dev/physics3d-rapier — Rapier 3D physics adapter for web-engine-dev - high-performance WASM physics backend
- @web-engine-dev/ragdoll — Ragdoll physics system with animation blending for web-engine-dev
- @web-engine-dev/spatial — Spatial partitioning data structures with Quadtree, Octree, BVH, and spatial hashing for web-engine-dev
Gameplay
Layer 8 | 5 packages
- @web-engine-dev/ai — Game AI systems including FSM, behavior trees, GOAP, utility AI, and perception
- @web-engine-dev/ai-ml — AI/ML integration for game AI: inference runtime, perception system, smart objects, and ML-driven steering
- @web-engine-dev/pathfinding — Navigation and pathfinding systems including A*, JPS, HPA*, flow fields, NavMesh, and RVO
- @web-engine-dev/procgen — Procedural generation utilities including noise functions, RNG, dungeon and terrain generation, and Wave Function Collapse
- @web-engine-dev/state — Game state machine with states, transitions, state stack, update hooks, and persistence
Infrastructure
Layer 8 | 15 packages
- @web-engine-dev/asset-pipeline — Build-time asset processing pipeline for game engines. Supports importers, processors, and incremental builds.
- @web-engine-dev/assets — Async asset loading with handles, caching, and hot-reload support
- @web-engine-dev/binary-compression — LZ4 WASM compression for fast runtime compression/decompression
- @web-engine-dev/build — Build orchestration for game projects with multi-platform targets
- @web-engine-dev/debug — Debug visualization tools with 2D/3D drawing primitives and projection support
- @web-engine-dev/geometry-compression — Engine-native geometry compression with optional Draco/meshopt decoding
- @web-engine-dev/hot-reload — Development-time hot reloading for assets, scripts, and components
- @web-engine-dev/level — Level and world management for game development - loading, unloading, transitions, and streaming
- @web-engine-dev/pooling — Object pooling with generic pools, recycling, and statistics tracking
- @web-engine-dev/prefab — Reusable entity templates (prefabs) for game engines. Supports variants, nesting, and runtime modification.
- @web-engine-dev/save — Save/load system with serialization, save slots, auto-save, and cloud integration
- @web-engine-dev/scene — ECS-native scene serialization and loading
- @web-engine-dev/storage — Unified storage abstraction with OPFS, IndexedDB, and memory providers
- @web-engine-dev/streaming — World and level streaming with chunk loading for large game worlds
- @web-engine-dev/texture-compression — KTX2/Basis Universal texture compression and transcoding
Meta
Layer 9 | 14 packages
- @web-engine-dev/benchmark — Performance benchmarking and regression detection for web-engine
- @web-engine-dev/camera — Camera controllers (follow, cinematic, shake) for web-engine
- @web-engine-dev/design-tokens — Shared design tokens: color palette, typography, spacing, and CSS generation
- @web-engine-dev/devtools — Inspector, profiler, and debug tools for web-engine
- @web-engine-dev/editor-core — Core editor infrastructure: commands, history, selection, and plugin system
- @web-engine-dev/editor-ui — Editor UI foundation with framework-agnostic reactive state
- @web-engine-dev/editor-viewport — Multi-viewport editor infrastructure: camera controllers, viewport management, and view matrices
- @web-engine-dev/engine — The complete web game engine - umbrella package that re-exports all modules
- @web-engine-dev/replay — Recording and playback system for web-engine
- @web-engine-dev/screenshot — Screenshot and recording utilities for web-engine
- @web-engine-dev/signals — Reactive signal utilities built on @preact/signals-core
- @web-engine-dev/timeline — Timeline and cinematic sequencer system for web-engine
- @web-engine-dev/timer — Game-aware timer system for web-engine
- @web-engine-dev/tween — Advanced interpolation with method chaining for web-engine
Player
Layer 8 | 4 packages
- @web-engine-dev/accessibility — Accessibility features (a11y) for web-engine-dev
- @web-engine-dev/achievements — Achievement and trophy system for web-engine-dev
- @web-engine-dev/i18n — Game localization system for web-engine-dev
- @web-engine-dev/telemetry — Game analytics and event tracking for web-engine-dev
Platform
Layer 8 | 9 packages
- @web-engine-dev/analytics-platform — Platform-wide analytics for web-engine-dev. Provides game analytics, creator dashboards, platform health metrics, funnel analysis, retention tracking, and A/B testing.
- @web-engine-dev/discovery — Game discovery and marketplace for web-engine-dev
- @web-engine-dev/embed — Game embedding system for websites with iframe management, responsive sizing, and secure parent-child communication
- @web-engine-dev/moderation — Content and user moderation system for multiplayer games
- @web-engine-dev/monetization — Creator economy and monetization system for web-engine-dev
- @web-engine-dev/publishing — Game publishing workflow management for web games. Handles versioning, metadata, releases, and categorization.
- @web-engine-dev/sandbox — Secure script execution sandbox for UGC platforms with capability-based security
- @web-engine-dev/social — Social features for game platforms including friends, chat, presence, and parties
- @web-engine-dev/ugc — User-generated content management for web-engine-dev. Handles content validation, versioning, storage, and licensing.
Runtime
Layer 8 | 3 packages
- @web-engine-dev/mobile — Mobile-specific features for web-engine-dev including orientation, vibration, wake lock, and safe areas
- @web-engine-dev/pwa — Progressive Web App support for web-engine-dev
- @web-engine-dev/xr — WebXR integration for immersive VR/AR experiences with hand tracking, controllers, and spatial anchors
Games
Layer 9 | 1 packages
- @web-engine-dev/space-shooter — Shared space shooter game logic using ECS — write once, run on server and client