Platypus
pkg
Our great sponsors
Platypus | pkg | |
---|---|---|
6 | 91 | |
2,706 | 24,099 | |
- | - | |
7.1 | 6.3 | |
3 days ago | 4 months ago | |
Objective-C | JavaScript | |
BSD 3-clause "New" or "Revised" 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.
Platypus
-
Shoes makes building little graphical programs for Mac, Windows, Linux simple
Something for which I wish there was a windows variant...
Embedding a script into a small tray icon/menubar app can be extremely powerfull even with its low complexity.
[1]: https://github.com/sveinbjornt/Platypus
- Sveinbjornt/Platypus: Create native Mac applications from command line scripts
-
Application-Specific Terminals
> Which apps do you use actually it for?
neovim, mutt, tig, weechat
> That's what aliases are for (or you could rename the binary?)!
Unfortunately, it's not that simple on macOS for app bundles. The human readable name of the app bundle really doesn't matter that much to the operating system -- it's the contents of Info.plist that matter. In order to have a separate app that can be Cmd+Tab'd to, you have to have a separate app bundle, separate app bundle identifier, etc. There's really not a way around it on macOS that I've seen.
(And to be clear, aliases do work on the command line. I'm talking specifically about GUI apps - which is my primary method of separating my different activities. Terminal emulator tabs are not good enough.)
This also doesn't solve the performance problems with any of the various GUI applications, nor does it solve my problem for other applications that I want to run.
> By the way, do you know the app https://github.com/sveinbjornt/Platypus that can generate app bundles on a Mac?
I do! I tried this route first, but it falls apart when you start a GUI application from the script that you supply to platypus. If your script is e.g. `wezterm start`, it'll just start up another instance of a wezterm-branded GUI app in addition to the wrapper app that Platypus spits out.
-
The Icelandic Saga Database
Random fact; this website is created and maintained by Sveinbjörn Þórðarson who also made Platypus (https://github.com/sveinbjornt/Platypus) and Sloth (https://github.com/sveinbjornt/Sloth) — software that Mac nerds might be familiar with.
Sveinbjörn is a ball of energy that just radiates positives for human society.
-
How to easily share a small CLI script with non-technical coworkers?
Not sure if I understood the question properly but I found this program for Macs the other day: Platypus. It will create a .app out of any scrap of code.
pkg
-
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?
-
Tips for reducing Docker image size
package the app using https://github.com/vercel/pkg and use a smaller base image like alpine, busybox or even scratch (if possible)
-
Making standalone exe
Check this thread: https://github.com/vercel/pkg/issues/1685
What are some alternatives?
hammerspoon - Staggeringly powerful macOS desktop automation with Lua
nexe - 🎉 create a single executable out of your node.js apps
Sloth - Mac app that shows all open files, directories, sockets, pipes and devices in use by all running processes. Nice GUI for lsof.
ncc - Compile a Node.js project into a single file. Supports TypeScript, binary addons, dynamic requires.
blueutil - CLI for bluetooth on OSX: power, discoverable state, list, inquire devices, connect, info, …
reverse-engineering - List of awesome reverse engineering resources
spaces-renamer - 💻 Ability to rename desktop spaces on macOS 10.10+ (NOT CURRENTLY WORKING ON 14.4)
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.
mySIMBL - :package: Plugin manager for macOS
bytenode - A minimalist bytecode compiler for Node.js
SubEthaEdit - General purpose plain text editor for macOS. Widely known for its live collaboration feature.
oclif - CLI for generating, building, and releasing oclif CLIs. Built by Salesforce.