AngularNodeGUI
December 18, 2019 ยท View on GitHub
Build performant, native and cross-platform desktop applications with Angular.๐
Angular NodeGUI is powered by Angular ๐ ฐ๏ธ and Qt5 ๐ which makes it CPU and memory efficient as compared to other chromium based solutions like electron. Angular NodeGUI is essentially a Angular renderer for NodeGUI.
Docs
Main docs: https://docs.nodegui.org
Article(Russian): Native and cross-platform desktop applications with Angular, NodeGui
Nodegui 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 events available from Qt / NodeJs.
- ๐ธ Can be used for Commercial applications.
- ๐ต๏ธโโ๏ธ Good Devtools support.
- ๐ Good documentation and website.
- ๐งโโ๏ธ Good documentation for contributors.
- Good support for dark mode (Thanks to QT).
Getting started
Requirements
- CMake 3.1 and up
- Make, GCC v7
- NodeJS 12.x and up.
Setting up on macOS, Windows, Linux
Easy start
npm i
npm start
Demo
Start app
Router
Use NodeguiRouterModule instead of RouterModule for routing. Example
NodeguiRouterModule.forRoot(appRoutes);
Widget
Mac
Windows