lazy-widgets

lazy-widgets

Typescript retained mode GUI for the HTML canvas API - a reboot of the @rafern/canvas-ui library.

This library's API is not stable and is expected to heavily change in the future. Planned features/changes:

  • Rewrite flexbox system to distribute final space instead of remaining space
  • Rewrite layout system to no longer use 2 stages, or to not unnecessarily mark widgets as dirty
  • Add decoration system
  • Rich text

Contributing

To build this project, run pnpm run build. To build in watch mode and with unminified output run pnpm run dev; the http-server package must be installed.

To check for linter errors, run pnpm run lint.

To add/modify theme properties, modify the theme_properties.json file and run pnpm run generate_theme.

Documentation

Documentation can be generated locally with the command pnpm run docs. Output will be in a new docs folder. The documentation is also served on Github Pages.

Example

Examples can be found in the examples folder, which are also served on Github Pages.

Special thanks

Special thanks to Playko (website, github) where this project started and is currently being developed at.

License

This project is licensed under the MIT license (see the LICENSE file)

This project uses the following open-source projects:

Generated using TypeDoc