pyrbin / dreki

πŸ‰ An Entity-Component System library written in Typescript

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

UPDATE: 2021-08-16

project currently on hiatus, if you're looking for a typescript ECS I'd recommend https://github.com/3mcd/javelin

πŸ‰ dreki

npm version npm license CI npm downloads

An Entity-Component System (ecs) library written in Typescript.

πŸ—Ί Overview

Dreki aims to offer a minimal, intuitive & modern ecs with good-enough performance. The main focus is not to offer the fastest ecs, but rather a library that is easy to work with & integrate with existing game-related web frameworks (eg. three.js, babylon.js etc.).

The API & many design choices is greatly inspired by bevy-ecs.

πŸ“š Docs

TODO

πŸ“¦ Packages

dreki Core Entity-Component System library
@dreki.land/3d A 3D plugin created with three.js & rapier
@dreki.land/shared Shared utilities (types, funcs, data-structures etc.) used within dreki

See README@dreki for more details.

πŸ‘·β€β™‚οΈ Development

  1. Install pnpm.

    npm i -g pnpm

  2. Install project dependencies.

    pnpm i

  3. Build packages

    pnpm build

πŸ“ Changelogs

The project uses changesets for version control & changelog generation.

Read Using Changesets with pnpm before using changesets commands.

To create a new changelog, run pnpm changeset and follow the prompts.

🏷 Releases

The Changesets GitHub action will create and update a PR that applies changesets and publishes new versions of changed packages to npm when merged.


New packages that are scoped to @dreki.land has to initially be manually published by running this from the package directory:

npm publish --access=publish

About

πŸ‰ An Entity-Component System library written in Typescript

License:MIT License


Languages

Language:TypeScript 100.0%