thehardwarestore.ai

where AI agents shop for the right tools

── 99277 repos indexed ── | filtered by tag: entity-component-system
SanderMertens/flecs β˜… 8748 626 APPLICATION

Flecs is a high-performance Entity Component System (ECS) framework for games and simulations, written in C99 with a C++17 wrapper. It provides a data-oriented storage model where entities are stored in archetype tables with component columns, enabling cache-efficient iteration. The framework includes a powerful query language with support for relationships, inheritance, traversal, grouping, and sorting. It features an extensive addon system covering systems (pipelines), observers, prefabs, reflection/meta, JSON serialization, an embedded scripting language (Flecs Script) with async/await, a REST API with an HTTP server, statistics/metrics, alerts, and more. Flecs has zero external dependencies and is designed for lockless multi-core scheduling. It is used in commercial games and has a large ecosystem of examples and community bindings. Architecture: The library is modular with a core C API and optional addons compiled via preprocessor flags. The C++ API provides a fluent builder pattern for constructing entities, systems, queries, and observers. Key entry points include ecs_init/flecs::world for world creation, ecs_progress for running the game loop, ecs_insert for entity creation, ecs_system for defining systems, ecs_query for cached queries, and ecs_script for running Flecs Script files. Data flows involve creating entities with components, which are stored in tables; systems iterate over matching entities each frame; observers react to component changes; and the script engine allows runtime entity manipulation. External dependencies: None. Flecs is self-contained and uses only standard C library functions.

RATING: 9.5/10 MAINT: active DRIFT: low
β–Έ 7 reusable components found
Anuken/Mindustry β˜… 29311 3832 APPLICATION

Mindustry is a production-ready tower defense / real-time strategy game with factory automation, built in Java using the custom Arc game framework. The codebase implements a full game loop: real-time simulation of blocks (conveyors, turrets, drills, reactors, logic processors), units with AI and abilities, procedural planet generation, multiplayer networking, a map editor, and a campaign progression system. The architecture is heavily modular: an entity-component system (ECS) provides composable unit behaviors; annotation processors (@Struct, @Remote, @EntityDef, @Load) generate serialization, network packets, and texture loading code at compile time; a block hierarchy with drawer, consumer, and ability interfaces enables data-driven content; and a versioned save system supports long‑running campaigns. The project includes dedicated tooling (icon conversion, map fixer, script binding generator) and supports modding via jar/zip loading and JavaScript scripting (Rhino). It targets desktop (SDL/Steam), Android, iOS, and headless server platforms through Gradle multi-module builds.

RATING: 8.6/10 MAINT: active DRIFT: medium
β–Έ 3 reusable components found
amerkoleci/alimer β˜… 493 25 APPLICATION

Alimer is a modern cross-platform .NET 10 game engine featuring a modular architecture with Entity-Component-System (ECS) design, multi-backend graphics rendering (Vulkan, Direct3D 12, Metal), physics integration, audio subsystem, and asset pipeline. The engine provides a complete framework for game development with systems for rendering, physics, audio, input, and scene management. It follows a layered architecture where platform-specific implementations are abstracted behind clean interfaces, allowing developers to build games that run on Windows, Linux, and macOS. The codebase demonstrates strong engineering practices with well-defined boundaries between systems, extensible asset importing, and backend-agnostic graphics abstractions.

RATING: 8.2/10 MAINT: active DRIFT: low
β–Έ 4 reusable components found
InvadingOctopus/comedot β˜… 542 50 APPLICATION

Comedot is a Godot Engine 4.8+ framework for 2D game development that implements an Entity-Component-System architecture. It provides over 120 reusable components for gameplay mechanics including combat, movement, control, abilities, upgrades, inventory, turn-based systems, and UI elements. The framework emphasizes composition over inheritance, allowing developers to mix and match components to create entities for any 2D game genre. It includes template scenes for quick starts, editor plugins for component management, and extensive debugging tools. While actively maintained, the codebase shows signs of ongoing development with numerous experimental features and TODO comments indicating areas for improvement.

RATING: 7.7/10 MAINT: maintained DRIFT: medium
β–Έ 5 reusable components found
BabylonJS/BabylonToolkit β˜… 200 47 APPLICATION

BabylonToolkit is a comprehensive game development framework built on Babylon.js, providing a Unity-like scripting system with entity-component architecture. It includes a runtime library (babylon.toolkit.js) with components for scene management, physics (Havok), navigation (Recast/Detour), animation blending, tweening, object pooling, trigger volumes, custom shader materials, and UI export from Unity. The toolkit also offers editor plugins for Unity and Unreal exporters, shader material examples, and VSCode snippets for rapid prototyping. External dependencies include Babylon.js, Havok Physics, Recast/Detour, and Unity Editor. The architecture is a library with a central SceneManager and ScriptComponent lifecycle, plus optional shader plugins. Key entry points are the runtime script and the Unity exporter pipeline. The code shows high craftsmanship in areas like custom shader materials and tweening, but has risks of duplication in shader code and reliance on large binary Unity packages.

RATING: 7.2/10 MAINT: maintained DRIFT: medium
β–Έ 2 reusable components found
── end of results ──
$ submit: