/haxe-material-ui

Primary LanguageHaxeMIT LicenseMIT

Haxe Material-UI logo

Haxe Material-UI

This library includes Haxe externs for all components from @material-ui/core, and all icons from @material-ui/icons.

Compatibility table

Current version (4.0.5) of haxe-material-ui is based off @material-ui/core version 4.7.2 and @material-ui/icons version 4.5.1.

Haxe Material UI @material-ui/core @material-ui/icons
3.9.x 3.9.x 3.0.x
4.x.x 4.7.0 4.5.x

Usage

This library is mostly used with react-next and Haxe 4. It is meant to be used with latest versions of react-next and react-types since it is using their latest features (helpers for writing correctly typed externs).

See test/install.hxml for recommended versions for haxelib dependencies.

Compatibility with current version of react should be possible using react-next-compat. This would not be 100% accurate, but since current version of react doesn't check props types, this should work.

Compatibility with Haxe 3.4.7 is now enforced in CI and should be kept at least until Haxe 4.1.0 is released.

Installation

Using haxelib:

haxelib install material-ui

Install npm dependencies:

npm i --save-exact @material-ui/core@4.7.2 @material-ui/icons@4.5.1

Optionally, install lab components too:

npm i --save-exact @material-ui/lab@4.0.0-alpha.35

Roadmap

This library is under heavy development and is still missing a lot of things to be used comfortably by other teams. I try to be as reactive as possible when you have issues or need specific components not yet implemented. You can find me on haxe-react's gitter or haxe discord (invitation link).

Current objectives

  • Add externs to existing utils in @material-ui/core and @material-ui/icons
  • Improve this README with instructions
  • Generate documentation from current code
  • Add examples (example project + some guides)
  • Improve CI with more complete tests