|
1 |
| -# React Desktop |
| 1 | +# NodeGUI React Desktop |
2 | 2 |
|
| 3 | +Building **performant**, **native** and **cross-platform** desktop applications with **JavaScript** + powerful **CSS like styling**. React Desktop is powered by **React** and **Qt5** which makes it CPU and memory efficient as compared to other chromium based solutions like electron. React Desktop is essentially a React renderer for [NodeGUI](https://github.com/nodegui/nodegui). |
3 | 4 |
|
4 |
| -For now make sure to link nodegui using npm link @nodegui/nodegui |
| 5 | +Visit: https://nodegui.github.io/nodegui for docs. |
5 | 6 |
|
6 |
| -Examples: |
| 7 | +<img alt="logo" src="https://github.com/nodegui/nodegui/raw/master/extras/logo/nodegui.png" height="200" /> |
7 | 8 |
|
8 |
| -`examples/calculator` |
| 9 | +## How does it look? |
| 10 | + |
| 11 | +<div style="display:inline; margin: 0 auto;"> |
| 12 | +<img alt="demo_linux" src="https://github.com/nodegui/nodegui/raw/master/examples/calculator/calculator_linux.png" height="300" /> |
| 13 | +<img alt="demo_win" src="https://github.com/nodegui/nodegui/raw/master/examples/calculator/calculator_win.jpg" height="300" /> |
| 14 | +<img alt="demo_mac" src="https://github.com/nodegui/nodegui/raw/master/examples/calculator/calculator_mac.png" height="300" /> |
| 15 | +</div> |
| 16 | + |
| 17 | +**More screenshots?** |
| 18 | + |
| 19 | +[See examples](https://github.com/nodegui/react-desktop/tree/master/examples/) |
| 20 | + |
| 21 | +## Features |
| 22 | + |
| 23 | +- 🧬 Cross platform. Should work on major Linux flavours, Windows and MacOS |
| 24 | +- 📉 Low CPU and memory footprint. Current CPU stays at 0% on idle and memory usage is under 20mb for a hello world program. |
| 25 | +- 💅 Styling with CSS (includes actual cascading). Also has full support for Flexbox layout (thanks to Yoga). |
| 26 | +- ✅ Complete Nodejs api support (Currently runs on Node v12.x - and is easily upgradable). Hence has access to all nodejs compatible npm modules. |
| 27 | +- 🎪 Native widget event listener support. supports all event available from Qt / NodeJs. |
| 28 | +- 💸 Can be used for Commercial applications. |
| 29 | +- 🕵️♂️ Good Devtools support (hot reload, live reload, debugging etc). |
| 30 | +- 📚 Good documentation and website. |
| 31 | +- 🧙♂️ Good documentation for contributors. |
| 32 | +- 🦹🏻♀️ Good support for dark mode (Thanks to QT). |
| 33 | +- 🏅First class Typescript support. (Works on regular JS projects too 😉). |
| 34 | + |
| 35 | +## Current focus: |
| 36 | + |
| 37 | +- [ ] (Partial support is present) Easily exstensible for creating custom native widgets (like react native). |
| 38 | +- [ ] (Partial) Should have a decent list of stylable native widgets. |
| 39 | +- [ ] Easy build and packaging process. |
| 40 | + |
| 41 | +## Getting Started |
| 42 | + |
| 43 | +- Check out [react-desktop-starter](https://github.com/nodegui/react-desktop-starter) to get up and running with your own React Desktop app! |
| 44 | +- Read through the [docs](https://nodegui.github.io/nodegui) |
| 45 | + |
| 46 | +## Docs for contributing |
| 47 | + |
| 48 | +Looking to contribute? If you wish to implement a new widget/add more features and need help understanding the codebase. You can start here: |
| 49 | + |
| 50 | +Contributing developer docs link: |
| 51 | + |
| 52 | +https://github.com/nodegui/nodegui/tree/master/docs/development |
| 53 | + |
| 54 | +## Building |
| 55 | + |
| 56 | +`npm run build [--qt_home_dir=/path/to/qt]` |
| 57 | + |
| 58 | +### LICENSE |
| 59 | + |
| 60 | +MIT |
0 commit comments