Skip to content
Build performant, native and cross-platform desktop applications with native React + powerful CSS like styling.πŸš€
TypeScript
Branch: master
Clone or download
master-atul Merge pull request #34 from slidinghotdog/patch-1
fix typo in CheckBox component
Latest commit a690ee9 Sep 14, 2019

README.md

React NodeGUI

Join the NodeGUI community on Spectrum All Contributors

Build performant, native and cross-platform desktop applications with JavaScript + powerful CSS like styling.πŸš€

React NodeGUI is powered by React βš›οΈ and Qt5 πŸ’š which makes it CPU and memory efficient as compared to other chromium based solutions like electron. React NodeGUI is essentially a React renderer for NodeGUI.

Visit: https://nodegui.github.io/nodegui for docs.

logo

How does it look?

demo_linux demo_win demo_mac
kitchendemo_macdemo_win

More screenshots?

See examples

Features

  • 🧬 Cross platform. Should work on major Linux flavours, Windows and MacOS
  • πŸ“‰ Low CPU and memory footprint. Current CPU stays at 0% on idle and memory usage is under 20mb for a hello world program.
  • πŸ’… Styling with CSS (includes actual cascading). Also has full support for Flexbox layout (thanks to Yoga).
  • βœ… Complete Nodejs api support (Currently runs on Node v12.x - and is easily upgradable). Hence has access to all nodejs compatible npm modules.
  • πŸŽͺ Native widget event listener support. supports all event available from Qt / NodeJs.
  • πŸ’Έ Can be used for Commercial applications.
  • πŸ•΅οΈβ€β™‚οΈ Good Devtools support (supports react-devtools, node debugger).
  • πŸ“š Good documentation and website.
  • πŸ§™β€β™‚οΈ Good documentation for contributors.
  • πŸ¦ΉπŸ»β€β™€οΈ Good support for dark mode (Thanks to QT).
  • πŸ…First class Typescript support. (Works on regular JS projects too πŸ˜‰).

Current focus:

  • (Partial support is present) Easily exstensible for creating custom native widgets (like react native).
  • (Partial) Should have a decent list of stylable native widgets.
  • Easy build and packaging process.

Getting Started

Docs for contributing

Looking to contribute? If you wish to implement a new widget/add more features and need help understanding the codebase. You can start here:

Contributing developer docs link:

https://github.com/nodegui/nodegui/tree/master/docs/development

Building

npm run build [--qt_home_dir=/path/to/qt]

Funding

React NodeGUI is an open source project and requires your support. If you like this project, please consider supporting my work with Ko-fi. Alternatively, Issues on React NodeGui can be funded by anyone via Issuehunt and the amount will be distributed to respective contributors.

Buy Me a Coffee at ko-fi.com Β  Β  issuehunt

Special Thanks

License

MIT

Maintainers ✨

People maintaining this project.

Atul R
Atul R

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Rahul Gaba
Rahul Gaba

πŸ’»
Kakul Gupta
Kakul Gupta

πŸ’»
Eva1ent
Eva1ent

πŸ’»
slidinghotdog
slidinghotdog

πŸ’»
Roy Sommer
Roy Sommer

πŸ’»
Natesh M Bhat
Natesh M Bhat

πŸ“–

This project follows the all-contributors specification. Contributions of any kind welcome!

You can’t perform that action at this time.