From 7e6a2f81a63c878d26610402572ede60ff1db411 Mon Sep 17 00:00:00 2001 From: Atul R Date: Mon, 3 Jun 2019 19:38:45 +0200 Subject: [PATCH] updated readme --- README.md | 101 +++++++++++++++++++++++++++++++++++------------------- 1 file changed, 66 insertions(+), 35 deletions(-) diff --git a/README.md b/README.md index 6a5700b21..5c9b89901 100644 --- a/README.md +++ b/README.md @@ -8,11 +8,30 @@ A cross platform library to build native desktop apps. Based on Qt5. ![linux](https://github.com/master-atul/qtnode-ui/raw/master/assets/screenshots/ubuntu_linux_nodeqt5.png "Linux Screenshot") +## 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. +[ ] - (Partial support is present) Easily exstensible for creating custom native widgets (like react native). +[*] - Support for flex box layouting using Yoga. +[*] - Supports styling using css (includes actual cascading) or atleast useful subset of css properties. +[*] - Complete Nodejs api support (Currently runs on Node v12 - and is easily upgradable). +[*] - Can use all node compatible npm modules. +[ ] - Native widget event listener support. +[*] - Should be usable for commercial applications aswell. +[ ] - (Partial) Should have a decent list of stylable native widgets. +[ ] - Easy build and packaging process. +[ ] - Good Devtools support (hot reload, live reload, debugging etc). +[ ] - Good documentation and website. +[ ] - Good documentation for contributors. + ## Development setup and getting started -This guide is for setting up `qtnode-ui` for contributors of qtnode-ui. +This guide is for setting up `node-native-ui` for contributors of node-native-ui. The actual getting started guide for users will be added once we reach a bit of stable level. +Make sure you have setup `qode` and installed it globally. + ### MacOSX: **Requirements** @@ -22,17 +41,11 @@ The actual getting started guide for users will be added once we reach a bit of **Setting up** -1. Install qt from official qt website. (Recommended version: 5.11.0) - or alternatively you can download it from : [http://download.qt.io/official_releases/qt/5.11/5.11.0/](http://download.qt.io/official_releases/qt/5.11/5.11.0/) -2. Keep note of the install directory of qt. Lets say you installed it at `/Users/username/Desktop/qt/`.
- Setup the environment variable:
- `export NQ_QT_HOME_DIR="/Users/username/Desktop/qt/5.11.0/clang_64"`
- You can even add it to you `.bashrc` or `.zshrc` file. -3. `git clone` this repo. -4. `yarn install` -- (if this fails on build part - dont worry about it) -5. `node ./scripts/darwin/setup.js` - (if this fails: check the previous steps to see if you missed something or try running next step for hints on what went wrong). -6. `npx jest ./scripts/darwin/check.test.js` - (This runs the basic setup checks to ensure your setup is as expected) -7. `yarn start` +1. Install latest version of Qt (5.12) via homebrew only. + +``` +brew install qt5 +``` ### Windows: @@ -59,22 +72,46 @@ On Ubuntu: `$ sudo apt-get install pkg-config build-essentials` should install e 2. Before running `yard build`, do `export PKG_CONFIG_PATH="/5.11.0/gcc_64/lib/pkgconfig"` -## General Idea +### Common: + +1. Once you have setup the platform specific stuff as mentioned above, follow these: + +2. `git clone` this repo. + +3. Keep note of the install directory of qt. You should probably find it at `/usr/local/Cellar/qt/5.12.1`. Copy this path and + edit the file `config/common.gypi`.
+ Change the field + + ``` + 'qt_home_dir': '