ncc
pkg
ncc | pkg | |
---|---|---|
17 | 93 | |
9,167 | 24,099 | |
0.9% | - | |
5.6 | 6.3 | |
13 days ago | 9 months ago | |
JavaScript | JavaScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
ncc
-
Create Multiple GitHub Actions in a Single Repository
You can create and package multiple GitHub Actions in a single repository that are written using TypeScript/JavaScript, allowing each action to run separately. Below is how to accomplish this using vercel/ncc, which allows compiling modules into a single file with its dependencies eliminating the need to include the node_modules folder in your repository:
-
Use Notion as your CMS along with Next.js
During my search for deploying Lambdas via GitHub actions, I came across a tutorial that utilized ncc for converting TypeScript and bundling. While ncc is effective, I discovered esbuild, which proved to be significantly faster and perfectly suited to my requirements.
-
So you're using a weird language
You could use ncc to compile a binary:
https://github.com/vercel/ncc
-
Contributors to AWS Lambda container cold starts
This appears to be caused by lazy loading of image layer data, particularly during container initialization, and latency introduced by the read operations. In general, you want to access as few files and as little data as possible during the initialization of your functions. For example, we've seen improvement when using ncc to bundle Node.js applications.
-
Tools of the Trade: Dyte CLI
What we do however, is bundle all these dependencies, and our own code into a single JS file using the nifty ncc tool (thanks Vercel!)
-
Label automation at your fingertips
Vercel's ncc compiler
-
Managing JavaScript GitHub Action ncc packing
The most unclear and confusing part is packing the code using ncc. The necessity of this step is caused by GitHub’s approach to running your Action.
-
TypeScript Dynamic Module Import
I filed an issue for the ncc bundler regarding a similar behavior
-
Ask HN: How do you (security) audit external software using NPM packages?
This may be slightly tangential but I recently discovered ncc[1] from vercel which can take a single node project and compile it and all dependencies to a single file.
As an added benefit it also collapses all contained dependencies license files into a single licenses.txt file too!
- [1] https://github.com/vercel/ncc
-
Compiling a Apollo Federated Graph with esBuild 🚀
The current process of building a package locally is by running through a gulp task, using ttypescript to compile the TS and @vercel/ncc to build the binary:
pkg
-
Let's build a Node.js Express React app as one executable file that runs on Windows, Linux, and Mac OS 🏩
To build our project, we'll use the popular PKG package. Let's install it first:
-
Compile your NodeJS application to single file executable
The method I used and it worked I used pkg. Of course, I don't mean vercel pkg because its development has stopped, but we can use from yao-pkg. It's an active fork of vercel pkg that also supports node20.
-
We are under DDoS attack and we do nothing
I don't remember the details, and cannot find my notes on vercel/pkg. But looking at https://github.com/vercel/pkg right now I see the project has been deprecated in favour of single-executable-applications
-
Tailwind CSS v4.0.0 Alpha
> Standalone CLI — we haven’t worked on a standalone CLI for the new engine yet, but will absolutely have it before the v4.0 release.
This part is the most exciting to me. Given the rest of the release announcement, I'm assuming this means that it'll be built in Rust rather than embed Node. While I'm not a Rust zealot of anything, I'm very partial to not embedding Node. Particularly when it depends on using Vercel's now-abandoned pkg[1] tool.`
[1] https://github.com/vercel/pkg
-
Things I've learned about building CLI tools in Python
The npm package called "pkg" seems to be the standard for packaging NodeJS applications
https://www.npmjs.com/package/pkg
Unfortunately you also need to bundle all your code into a single file for it to work, but you can use any bundler (webpack, parcel, etc) you want at least
-
Deno 1.35: A fast and convenient way to build web servers
Nodejs support for "single executable applications" is getting there - this issue below is preventing wider adoption at the moment:
"The single executable application feature currently only supports running a single embedded script using the CommonJS module system."
https://nodejs.org/api/single-executable-applications.html
Should be an awesome game changer for node.js when the feature gets rounded out.
Also check out vercel's `pkg`: https://github.com/vercel/pkg/issues/1291
-
Can I include Node inside my project?
Yes, you can. Check out pkg for a fun option, which can package up your project and Node.js into a single executable.
-
[Question] How does Node-RED compile a flow?
Further, you could experiment with the pkg tool that allows you to package up Node JS, your source, and your dependencies into one single executable for easy distribution.
- Bun v0.6.0 – Bun's new JavaScript bundler and minifier
- How to restrict the access to an on premise node server?
What are some alternatives?
esbuild - An extremely fast bundler for the web
nexe - 🎉 create a single executable out of your node.js apps
Next.js - The React Framework
reverse-engineering - List of awesome reverse engineering resources
typescript-action - Create a TypeScript Action with tests, linting, workflow, publishing, and versioning
webpack - A bundler for javascript and friends. Packs many modules into a few bundled assets. Code Splitting allows for loading parts of the application on demand. Through "loaders", modules can be CommonJs, AMD, ES6 modules, CSS, Images, JSON, Coffeescript, LESS, ... and your custom stuff.
nft - Node.js dependency tracing utility
bytenode - A minimalist bytecode compiler for Node.js
picomatch - Blazing fast and accurate glob matcher written JavaScript, with no dependencies and full support for standard and extended Bash glob features, including braces, extglobs, POSIX brackets, and regular expressions. Used by GraphQL, Jest, Astro, Snowpack, Storybook, bulma, Serverless, fdir, Netlify, AWS Amplify, Revogrid, rollup, routify, open-wc, imba, ava, docusaurus, fast-glob, globby, chokidar, anymatch, cloudflare/miniflare, pts, and more than 5 million projects! Please follow picomatch's author: https://github.com/jonschlinkert
oclif - CLI for generating, building, and releasing oclif CLIs. Built by Salesforce.
vercel - Develop. Preview. Ship.
parcel - The zero configuration build tool for the web. 📦🚀