Back to list
verekia

koota

by verekia

⚛️ React Three Fiber Game Dev Recipes

17🍴 0📅 Jan 22, 2026

SKILL.md


name: koota description: Use Koota for data-oriented Entity Component System architecture with React bindings.

Koota ECS

Use Koota for data-oriented Entity Component System architecture with React bindings.

When setting up or undertaking important changes with Koota, fetch the documentations:

https://raw.githubusercontent.com/pmndrs/koota/refs/heads/main/README.md

Technique

Define traits (components) with trait(), create a world, spawn entities with traits, and query entities in systems. Use useQuery to reactively render entities and useTraitEffect to respond to trait changes.

Key Concepts

  • trait() defines component schemas with default values
  • world.spawn() creates entities with traits
  • world.query() finds entities matching traits
  • useQuery() hook for reactive entity lists in React
  • useTraitEffect() for responding to trait changes without re-rendering
  • Systems are React components that use useFrame to update entities (they return null, not views)

Usage

const Position = trait({ x: 0, y: 0 })
const IsCharacter = trait()

const world = createWorld()

// Spawn
world.spawn(Position({ x: 1, y: 2 }), IsCharacter)

// Query in system
world.query(Position).updateEach(([position]) => {
  position.x += 0.01
})

// React component
const characters = useQuery(Position, IsCharacter)

This skill is part of verekia's r3f-gamedev.

Score

Total Score

65/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

1ヶ月以内に更新

+10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

+5

Reviews

💬

Reviews coming soon