# Build 2D games with LuaJIT > Typed entity component system and game framework for Lua. Tecs is a high-performance, typed Entity Component System for LuaJIT. The core tecs module is renderer-agnostic; tecs2d layers on LÖVE2D integration, GPU-driven rendering, input, audio, UI, tiled maps, and MCP tooling. ## Table of Contents ### Tecs - [Getting Started](/tecs.md) - [World](/tecs/world.md) - [Phases](/tecs/phases.md) - [Systems](/tecs/systems.md) - [Archetypes](/tecs/archetype.md) - [Events](/tecs/events.md) - [State Stack](/tecs/states.md) - [Builtins](/tecs/builtins.md) - [Save games](/tecs/save-games.md) #### Queries - [Queries](/tecs/queries.md) - [Query callbacks](/tecs/queries/callbacks.md) - [Query grouping](/tecs/queries/grouping.md) #### Components - [Components](/tecs/components.md) - [Component Construction](/tecs/components/construction.md) - [Table Components](/tecs/components/table-components.md) - [Tag Components](/tecs/components/tag-components.md) - [Scalar Components](/tecs/components/scalar-components.md) - [FFI Components](/tecs/components/ffi.md) - [Component Bundles](/tecs/components/bundles.md) - [Component Serialization](/tecs/components/serialization.md) - [Dirty Tracking](/tecs/components/dirty-tracking.md) #### Relationships - [Relationships](/tecs/relationships.md) - [FFI Relationships](/tecs/relationships/ffi.md) #### Utilities - [Tecs JSON](/tecs/utils/json.md) - [Logging module](/tecs/utils/logging.md) - [Profiling](/tecs/utils/profiling.md) ### Tecs2D - [Getting Started](/tecs2d.md) - [Love2D Integration](/tecs2d/love2d.md) - [Love2D events](/tecs2d/events.md) - [Tween](/tecs2d/tween.md) - [Stats plugin](/tecs2d/stats.md) #### Input & Controls - [Input Handling](/tecs2d/input.md) ##### Controller - [Tecs Controller](/tecs2d/input/controller.md) - [Bindings](/tecs2d/input/controller/bindings.md) - [Gamepad Support](/tecs2d/input/controller/gamepad.md) - [API Reference](/tecs2d/input/controller/api.md) #### Rendering - [Rendering](/tecs2d/rendering.md) - [Camera](/tecs2d/rendering/camera.md) - [Shapes](/tecs2d/rendering/shapes.md) - [Text](/tecs2d/rendering/text.md) - [Styling](/tecs2d/rendering/styling.md) - [Layers](/tecs2d/rendering/layers.md) - [Lighting](/tecs2d/rendering/lighting.md) - [Materials](/tecs2d/rendering/materials.md) - [Particle Emitter](/tecs2d/rendering/particles.md) - [Custom Drawing](/tecs2d/rendering/custom-drawing.md) ##### Sprites - [Sprites](/tecs2d/rendering/sprites.md) - [Sprite Sheets](/tecs2d/rendering/sprites/sheets.md) - [Animation](/tecs2d/rendering/sprites/animation.md) - [Slices and Pivots](/tecs2d/rendering/sprites/slices.md) - [Sprite Collisions](/tecs2d/rendering/sprites/collisions.md) - [Animation Events](/tecs2d/rendering/sprites/events.md) - [Sprite Tiling](/tecs2d/rendering/sprites/tiling.md) ##### UI - [Tecs UI](/tecs2d/rendering/ui.md) - [Anchor](/tecs2d/rendering/ui/anchor.md) - [LayoutBox](/tecs2d/rendering/ui/layoutbox.md) - [LayoutNode](/tecs2d/rendering/ui/layoutnode.md) - [ClipBounds](/tecs2d/rendering/ui/clipbounds.md) - [FitContent](/tecs2d/rendering/ui/fitcontent.md) - [Layout Helpers](/tecs2d/rendering/ui/helpers.md) #### Assets - [Tecs Assets](/tecs2d/assets.md) - [API Reference](/tecs2d/assets/api.md) #### Audio - [Tecs Audio](/tecs2d/audio.md) - [Audio Components](/tecs2d/audio/components.md) - [Audio API Reference](/tecs2d/audio/api.md) #### Tiled - [Tecs Tiled](/tecs2d/tiled.md) - [Tilemap Component](/tecs2d/tiled/tilemap.md) - [TileSource Component](/tecs2d/tiled/tile-source.md) - [TileChunks](/tecs2d/tiled/tile-chunks.md) - [Tile Collision](/tecs2d/tiled/collision.md) - [Debug Plugin](/tecs2d/tiled/debug-plugin.md) - [Utility Functions](/tecs2d/tiled/utility-functions.md) #### Physics - [Physics](/tecs2d/physics.md) - [Physics Components](/tecs2d/physics/components.md) - [Collision Events](/tecs2d/physics/collisions.md) - [Transform Smoothing](/tecs2d/physics/smoothing.md) #### MCP - [Tecs MCP Server](/tecs2d/mcp.md) - [Tools](/tecs2d/mcp/tools.md) ### Other - [Plugins](/tecs/plugins.md)