zx
A tool for writing better scripts (by google)
chalk
π Terminal string styling done right (by chalk)
Our great sponsors
zx | chalk | |
---|---|---|
90 | 47 | |
36,003 | 19,707 | |
1.3% | 0.7% | |
9.4 | 7.1 | |
4 days ago | about 2 months ago | |
JavaScript | JavaScript | |
Apache License 2.0 | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.
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.
zx
Posts with mentions or reviews of zx.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-01-28.
- Show HN: Clamshell- an experimental Python based shell
-
We code most of our DevOps tooling in typescript - are we bad people?
I mean, at some point you're going to end up with a bunch of shell scripts in your repo that will dodge the usual type checks & lint rules, and I've wasted quite some time on bugs that would be caught by such safety nets. I think working with bash is too error-prone, even for smaller scripts, and there's a reason why tools like zx exist.
- Shell Script Best Practices, from a decade of scripting things
-
Awaiting problems in JavaScript
The automatic flattening of Promise> is a minor inconvenience that I faced recently when working with zx scripts (see the Real-life example section in my other article in this series). The root of the problem was that I wanted to get access to the Promise returned from an async function as zx adds methods on that Promise (and calls it a ProcessPromise) and I was unable to, since it was automatically flattened. This led me to evaluate the Promise API and see how different it is from a traditional Future monad.
-
Organizing EBook Files with Python π
Python also has a rich ecosystem of ebook parsing libraries, and fairly easily handles things like file renaming, extensions, environment variables on Linux machines, which is what my NAS box runs. And while my first language is typescript/javascript, so I couldβve utilized something like BASH + Googleβs ZX, it felt like a good case to try to get some experience with Python, which Iβve never really used. Luckily VS Codeβs intellisense (with some Python plugins), and Pythonβs relatively simple syntax made it quite easy to get from Aβ B in terms of getting the pieces all put together.
-
Third party libraries that include reflink copying?
I stopped writing bash too. I'm writing a lot of TypeScript these days, and for that zx is really cool. I think its Clojure equivalent would be nbb.
-
whats the advantages and disadvantages and limitations of worker thread in nodejs compared to multithreading in frameworks like spring ?
I've also done that, as it is the better solution for applications that are meant to be purely single-threaded. It's also easier than dealing with the async version (either promise-based or callback). Or at least it was, before I discovered https://github.com/google/zx.
-
Bash vs Node
Personally I seldom write bash scripts so when I do usually have to google how to do everything, and I usually have shellcheck in my editor to catch obvious bad practices. I write js much more often so Iβve used Shelljs to avoid such headaches, though it has its own set of conventions to wrap your head around. Zx looks neat too https://github.com/google/zx . If the scripts are going to be maintained by devs without node experience Iβd stick with bash.
-
What are the disadvantages of using an interactive shell based on a regular programming language (python, scheme's scsh, etc) vs. bourne shell and bash?
There are many alternative shells out there. The popular ones seem to maintain a degree of compatibility with bourne shell and bash, namely dash and zsh. Some deviate even more, like fish. But then I've learned that it is possible to use shells based on regular programming languages. I've seen people using python instead of bash, which initially I thought was weird, but then wondered "why not?". I've also heard about scheme's scsh, and potentially JavaScript's zx. Never tried them, so maybe they're bad examples.
-
Do you know how many of them have disappeared after making a post like this?
You might be delighted to learn of https://github.com/google/zx :-)
chalk
Posts with mentions or reviews of chalk.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-12-21.
-
error of installing icon library
131 packages are looking for funding run `npm fund` for details 72 vulnerabilities (12 low, 19 moderate, 37 high, 4 critical) To address issues that do not require attention, run: npm audit fix To address all issues (including breaking changes), run: npm audit fix --force Run `npm audit` for details. C:\Users\39388\Desktop\VALU PROCESS\FRONT\ConsultingBag_Frontend-main\ConsultingBag_Frontend-main> C:\Users\39388\Desktop\VALU PROCESS\FRONT\ConsultingBag_Frontend-main\ConsultingBag_Frontend-main>npm fund [email protected] βββ¬ https://opencollective.com/bootstrap β β βββ [email protected] β βββ https://opencollective.com/popperjs β βββ u/popperjs/[email protected] βββ https://opencollective.com/date-fns β βββ [email protected] βββ https://opencollective.com/formik β βββ [email protected] βββ https://opencollective.com/styled-components β βββ [email protected] βββ https://github.com/sponsors/jacobwgillespie β βββ [email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/evaico[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected], u/styled-icons/[email protected] βββ¬ https://github.com/chalk/chalk?sponsor=1 β β βββ [email protected] β βββ https://github.com/chalk/ansi-styles?sponsor=1 β βββ [email protected], [email protected] βββ https://github.com/sponsors/RubenVerborgh β βββ [email protected] βββ https://github.com/chalk/wrap-ansi?sponsor=1 β βββ [email protected] βββ https://opencollective.com/core-js β βββ [email protected], [email protected] βββ¬ https://opencollective.com/babel β β βββ u/babel/[email protected] β βββ https://opencollective.com/browserslist β βββ [email protected], [email protected], [email protected] βββ https://github.com/sponsors/ljharb β βββ [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected] βββ¬ https://github.com/inikulin/parse5?sponsor=1 β β βββ [email protected] β βββ https://github.com/fb55/entities?sponsor=1 β βββ [email protected], [email protected] βββ https://github.com/sponsors/fb55 β βββ [email protected], [email protected], [email protected], [email protected] βββ https://github.com/sponsors/sindresorhus β βββ [email protected], [email protected] βββ https://github.com/sponsors/epoberezkin β βββ [email protected] βββ https://github.com/sponsors/isaacs β βββ [email protected] βββ https://github.com/fb55/htmlparser2?sponsor=1 β βββ [email protected] βββ https://opencollective.com/postcss/ β βββ [email protected], [email protected] βββ https://github.com/sponsors/wooorm β βββ [email protected] βββ https://tidelift.com/funding/github/npm/autoprefixer β βββ [email protected] βββ https://github.com/sponsors/feross β βββ [email protected], [email protected], [email protected] βββ¬ https://paulmillr.com/funding/ β β βββ [email protected] β βββ https://github.com/sponsors/jonschlinkert β βββ [email protected] βββ https://tidelift.com/funding/github/npm/loglevel βββ [email protected]
-
Micro TAP formatter that works very well with the Node >=18 built-in node:test harness
Less than 100 lines of code, and a single chalk dependency.
-
Building a TypeScript CLI with Node.js and Commander
Commander.js provides a lot of features that allow you to succinctly build command-line interfaces. Furthermore, the Node.js community provides libraries such as Chalk and Figlet that complement Commander.js CLIs to make them look visually appealing.
-
16-Nodejs Course 2023: Application Configurations
We can use chalk to color our messages, let's install it.
- Casual Friday 14/10/2022 - Giornata mondiale contro l'omonimia
-
How to build an npx starter template
Add some styling using chalk.
-
Make TikToks with JavaScript 1
Chalk
-
Build a business card CLI tool
There are many tools available to help with styling your command line output. For my business card, I used a combination of boxen to draw the box around the content, and chalk to power the font styles and colours. I'll leave this part up to you, but you can view the code on GitHub to see how I did it. Be aware that if you want to use ES6 imports in Node, you'll need to update your index.js file extension to .mjs, and edit the package.json "bin" section accordingly.
- can you colorize the output in terminal? (zsh,osx,iterm,node)
-
How to build a faucet CLI using NodeJS π
chalk, to colorize the console output.
What are some alternatives?
When comparing zx and chalk you can also consider the following projects:
shelljs - :shell: Portable Unix shell commands for Node.js
Inquirer.js - A collection of common interactive command line user interfaces.
TypeScript - TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
deno - A modern runtime for JavaScript and TypeScript.
Commander.js - node.js command-line interfaces made easy
xonsh - :shell: Python-powered, cross-platform, Unix-gazing shell
oclif - Node.js Open CLI Framework. Built by Salesforce.
execa - Process execution for humans
ora - Elegant terminal spinner
boxen - Create boxes in the terminal
Figlet - JavaScript parser for FIGlet fonts