• Stars
    star
    206
  • Rank 189,602 (Top 4 %)
  • Language
    TypeScript
  • Created about 5 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Package and deploy apps built with NodeGui to all platforms

Packer 📦

Packer is a npm module that allows you to package apps built with NodeGui or React NodeGui into a standalone executable. Packer works on Mac, Windows and Linux

This is a initial MVP release of the module.

On MacOS - Packer will output a dmg file

On Linux - Packer will output an AppImage which is something similar to a .app file in MacOS

On Windows - Packer outputs a folder containing the executable and all the dlls.

Currently if you need to produce a build you need to run the packer in different OS environments. That is, cross platform builds are not supported in this release.

Usage

  • First step is to install the packer as a dev dependency. You can do so by:

    npm install --save-dev @nodegui/packer

  • Next you can run the init command:

    npx nodegui-packer --init MyApp

    This will produce the deploy directory containing the template. You can modify this to suite your needs. Like add icons, change the name, description and add other native features or dependencies. Make sure you commit this directory.

  • Next you can run the pack command:

    npx nodegui-packer --pack <path to dist>

    This command essential takes the dist folder as the input and puts it in the suitable location inside the standalone executable. Also it runs the correct deployment tool (macdeployqt incase of mac, etc) and packs in the dependencies. The output of the command is found under the build directory. You should gitignore the build directory.

  • macOS supports signing the application:

    npx nodegui-packer --pack <path to dist>

How does it work ?

Packer uses Qt's packaging tools in all three platforms.

Requirements

  • Needs Qode v2.x (NodeGui v0.15.0 and up)

Future enhancements:

  1. Cross platform builds.
  2. Better documentation.
  3. Reduce / Remove unnecessary dynamic libraries.
  4. Reduce qode binary size.

Please feel free to help out with this in anyway you can.

More Repositories

1

nodegui

A library for building cross-platform native desktop applications with Node.js and CSS 🚀. React NodeGui : https://react.nodegui.org and Vue NodeGui: https://vue.nodegui.org
C++
8,851
star
2

react-nodegui

Build performant, native and cross-platform desktop applications with native React + powerful CSS like styling.🚀
TypeScript
6,177
star
3

svelte-nodegui

Build performant, native and cross-platform desktop applications with native Svelte + powerful CSS-like styling.🚀
TypeScript
2,843
star
4

vue-nodegui

Build performant, native and cross-platform desktop applications with native Vue + powerful CSS like styling.🚀
TypeScript
805
star
5

examples

Repo containing example apps made with NodeGui and React NodeGui
TypeScript
190
star
6

react-nodegui-starter

Starter repository for react based native desktop apps using react-nodegui
JavaScript
173
star
7

nodegui-starter

A starter repo for NodeGui projects
TypeScript
123
star
8

qode

DEPRECATED: Please see https://github.com/nodegui/qodejs instead
C++
91
star
9

awesome-nodegui

Useful resources for creating apps with NodeGui
85
star
10

svelte-nodegui-starter

JavaScript
55
star
11

vue-nodegui-starter

starter skeleton repository for vue-nodegui projects
Vue
32
star
12

nodegui-plugin-webview

[WIP] A NodeGui plugin that adds webview support
C++
28
star
13

nodegui-plugin-animation

A NodeGui plugin that adds native animation capabilities to NodeGui widgets and objects. Based on QAnimation
C++
15
star
14

nodegui-plugin-title-bar

Plugin for NodeGUI to hide macOS title bar and leave only traffic lights.
Objective-C++
13
star
15

os-utils

A helper module for NodeGui which contains OS specific native features.
C++
10
star
16

cra-template-react-nodegui

The CRA bootstrap template for creating desktop apps with react-nodegui
JavaScript
8
star
17

nodegui-plugin-example

an example native plugin
C++
6
star
18

postcss-nodegui-autoprefixer

A postcss plugin for prefixing css in NodeGui to make it work with Qt
TypeScript
6
star
19

parcel-plugin-nodegui

official parcel plugin for using and bundling assets with your nodegui app
JavaScript
6
star
20

devtools

React NodeGui's devtools support module.
JavaScript
5
star
21

typedoc-plugin-markdown

A plugin for TypeDoc that enables TypeScript API documentation to be generated in Markdown.
TypeScript
2
star
22

artifact-installer

An artifact or prebuilt binary/dependency installer for NodeGui. Used to setup minimal Qt installation etc
TypeScript
2
star
23

svelte-nodegui-preprocessor

TypeScript
2
star
24

.github

Default Org health files
1
star