andrewoma / reakt

Reakt is a Kotlin wrapper for facebook's React library

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

WARNING: This project is not actively maintained and was a proof of concept using now outdated versions of Kotlin and React. See the Create React Kotlin App as an example of using Kotlin with React.

Reakt

Reakt is a Kotlin wrapper for Facebook's React library.

It includes a working port of the Flux TodoMVC Example.

To run the example, clone the repository, build the project and open index.html from the todo/build/web directory.

Features

  • A completely typesafe wrapper over React.
  • A Kotlin-based HTML builder API (no JSX equivalent is required).

Comparison

Building

  • Clone repository
./gradlew buildWeb
  • That's it. Now you can open todo/build/classes/main/index.html to see the example Todo application.
  • Open build.gradle in IntelliJ, make project will overwrite generated js, so just refresh in browser

Using in your project as a library

  • Build reakt.jar (reakt/build/libs)
./gradlew reakt:jar
  • In IntelliJ, you can add this jar as a dependency to your Kotlin(JavaScript) project or from the command line
kotlinc-js -output my-awesome-app.js src -library-files reakt.jar
  • See Todo sample for how to use gradle build

Credits

Status

  • Proof of concept

Roadmap

  • Clean up copyrights and licenses for derivative work
  • Review naming conventions (Actions/Events)
  • Add properties to the CSS Style class
  • Support the full React API (refs, renderToString, renderToDocument et al.)
  • Wrap the test API and support DOM-based tests (probably via Karma)
  • Review the visibility of the react.* package

License

This project is licensed under a MIT license.

About

Reakt is a Kotlin wrapper for facebook's React library

License:MIT License


Languages

Language:JavaScript 73.6%Language:Kotlin 24.1%Language:CSS 2.1%Language:HTML 0.2%