Skip to content

Latest commit

 

History

History
85 lines (56 loc) · 3.87 KB

README.md

File metadata and controls

85 lines (56 loc) · 3.87 KB

Go with React GoDoc Go Report Card

Facebook's React is one of the most dominant libraries for front-end development around. Google's Go programming language is one of the most elegantly crafted languages for server development. Why not combine the two?

This package is an extremely thin wrapper over the native react.js API. The objective was to make it light-weight, developer-friendly and intuitive. You shouldn’t have to scour the documentation to get going — a few peeks should be adequate. If you know your way around the React API and you know a bit of Go, then you should be able to make prototypes and production-worthy applications in no time.

This package is best suited for making Desktop applications using these technologies:

The package is production ready. An optional (but highly convenient) elements sub-package is also included.

See Tutorial here.

the project to show your appreciation.

Dependencies

Installation

go get -u github.com/rocketlaunchr/react

Examples

The examples can be found here:

Uptime Timer

  • How to create React class components
  • How to pass props from parent to child
  • How to use UnmarshalProps() and UnmarshalState()
  • How to use state() and setState()
  • How to create strongly-typed structured props and states

Event Handling

  • How to create React functional components
  • How to handle events (and pass extra arguments)
  • How to create a Ref and interact with dom object directly
  • 100% written in Go
  • Cross-platform (MacOS, Win, Linux)
  • Go to Javascript via gopherjs
  • Electron.js based
  • How to bundle javascript dependencies using rollup.js

Performance Tips

Future Work

  • WebAssembly version

Legal Information

The license is a modified MIT license. Refer to LICENSE file for more details.

© 2018-19 PJ Engineering and Business Solutions Pty. Ltd.

Final Notes

Feel free to enhance features by issuing pull-requests.