npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@nodegui/packer

v1.5.0

Published

Package and deploy apps built with NodeGUI to all platforms

Downloads

1,045

Readme

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.

  • On Mac - it uses macdeployqt : https://doc.qt.io/qt-5.9/osx-deployment.html#macdeploy
  • On Windows - it uses windeployqt : https://doc.qt.io/qt-5/windows-deployment.html
  • On Linux - There is no official tool, hence it uses linuxdeployqt - https://github.com/probonopd/linuxdeployqt

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.