* Update for libui-node 0_1_0 - Use native eventloop - position got removed * Update libui-node version to 0.1.0 * babel rebuild * Cleanup * Fix non-check menu items * Make quit menu work * Add onShouldQuit to App and expose to user * Remove bin |
||
|---|---|---|
| .. | ||
| component_APIs | ||
| images | ||
| methods | ||
| SVG | ||
| .nojekyll | ||
| _coverpage.md | ||
| _sidebar.md | ||
| CNAME | ||
| index.html | ||
| js_example.js | ||
| manual_install.md | ||
| packaging.md | ||
| python_example.py | ||
| quickstart.md | ||
| README.md | ||
Proton Native
Create native desktop applications through a React syntax, on all platforms
Why?
On mobile, it used to be hard to build beatiful cross-platform apps. Then React Native came along, giving us a seamless way to build user interfaces and manage state in code, all while doing it cross platform.
On desktop, there is no such tool. You can create a GUI using something like Qt, but the code to make it is messy and unorganized. Having made a very large GUI myself, it gets very cumbersome to manage all of that.
Some of you might be saying that you could do it in Electron. It's a good tool, but it brings in a lot of overhead, running a full webbrowser to manage a small GUI, while Proton Native can do the same, using native tools, with a smaller size and with less resource usage.
Proton Native does the same to desktop that React Native did to mobile. Build cross-platform apps for the desktop, all while never leaving the React eco-system. Popular React packages such as Redux still work.
Compare this code in Qt (Python):
To this code using Proton Native:
It is not only shorter, it is also easier to read and to edit, and can easily utilize the power of the state.
Features
- Same syntax as React Native
- Works with existing React libraries such as Redux
- Cross platform
- Native components. No more Electron
- Compatible with all normal Node.js packages
Examples
Check out the examples to see more.