conf
Ink
Our great sponsors
conf | Ink | |
---|---|---|
4 | 64 | |
1,182 | 25,760 | |
- | - | |
5.1 | 6.4 | |
about 1 month ago | 3 days ago | |
TypeScript | TypeScript | |
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.
conf
-
Social engineering campaign targeting tech employees spreads through NPM malware
Wow. There is even one package to not use a JavaScript object: https://www.npmjs.com/package/conf
-
Rob Pike: โDotfilesโ being hidden is a UNIXv2 mistake (2012)
info on XDG: [the XDG spec](https://standards.freedesktop.org/basedir-spec/basedir-spec-...)
tools that respect XDG, for fellow JS CLI developers:
- https://github.com/davidtheclark/cosmiconfig Find and load configuration from a package.json property, rc file, or CommonJS module. [Check `searchPaths` to implement XDG spec compliance.](https://github.com/davidtheclark/cosmiconfig/issues/152)
- Sindre's libraries use [`env-paths`](https://github.com/sindresorhus/env-paths#pathsconfig) to get paths compliant with this.
- https://github.com/sindresorhus/conf simple config storing (maybe try [conf-cli](https://github.com/natzcam/conf-cli) to manipulate if needed) the successor to [configstore](https://github.com/sindresorhus/conf#how-is-this-different-f...)
- https://github.com/jonschlinkert/data-store conf like datastore but in the shclinkerverse
-
Building a CLI tool using node - An Ultimate Beginners guide ๐
Now, we implement history feature through which we can view the lastly created password through the -h or --history flag. For this purpose we use conf package. But first, let's create the flag feature. We use process.argvfor this purpose, process.argv is an inbuilt API used to get the arguments passed via command line like -h. We will slice it to remove the first two indexes of it to get relevant data only.
-
How to Build a Command Line Interface (CLI) Application with Node.JS๐จโ๐๐ค.
conf:This package allows us to save persistent information on the userโs machine. We will be using it to save the userโs todo list
Ink
-
I created a simple CLI tool that helps you code FAST!
I've always wanted to build a CLI tool, and when I realized that you can build one using React with Ink, I converted my Python script into a CLI tool.
-
Delete git branches in batches
โ ๏ธ Git for Windows Terminal is currently not supported, and the tool is limited to ink. We will look for alternatives later. Please use CMD, Vscode terminal's Git... terminal
-
Setup Simple Web UI for Node.js App in Seconds
There is a good solution for some of those cases - ink. With ink, I can implement text-based UI with knowledge of React, which is neat but there are still some caveats for my usages:
-
Building Reactive CLIs with Ink - React CLI library
Looks cool, right? Building a similar UI in the terminal without any library would be quite hard, though, thanks to Ink it's almost as easy as building any frontend UI with React.
-
Terminal-like output library for js?
ink?
-
Launch HN: Resend (YC W23) โ Email API for Developers Using React
You get the comfort of using react components instead of fighting with HTML tables to make your emails look nice. I think it's awesome! It's analog to what ink[0] does with CLI outputs. Sure, you could write fancy CLI outputs in bash, but ink takes the pain out of it and makes it easy.
-
Is Node.js a good way to implement a CLI app with persistence?
Due to Node's asynchronous behavior, it makes Node great for long-running processes that make a lot of HTTP requests, database calls, and other async ops, like a web server or a REST API. However, if I am making a CLI tool for pretty much personal use only, with very minimal async operations, then blocking the event loop with a synchronous function that will resolve almost immediately will make no difference perceivable to a human brain or have any speed benefits that someone can actually observe (think `fs.readFileSync` or `require('dotenv') of 10 line config file, or a quick embedded db (sqlite) query with only ~100 records. I'm wondering what the best way to implement the database part of the app synchronous. I can read/write to JSON files but it would be tricky because the data is relational, and some complex joins and other data wrangling operations are required (complex to perform in JS but are easy to implement in a SQL statement). It's not important what the operations are, that's not the point of this post. This is mostly a personal project of interest: making this CLI tool completely avoiding any async operations/using no promises. I would like to use node tho, as I said this is just out of interest and I also want to experiment with several CLI libraries such as Ink or Cliffy.
-
Ink: React for interactive command-line apps
Ink is amazing for quickly hacking together TUIs. I recently did so with Nbb (Node Babashka) and and enjoyed the experience overall.
My only real complaint is how everything in your VDOM seems to re-render on a state change. IIRC this is being addressed [1], but is something to be mindful of, especially if your users may be using slow machines.
-
create-helix-app: project templates with Helix and more
To try it out, run npx create-helix-app in your terminal. It is powered by Nbb, Ink, and Helix itself!
What are some alternatives?
Commander.js - node.js command-line interfaces made easy
oclif - CLI for generating, building, and releasing oclif CLIs. Built by Salesforce.
blessed - A high-level terminal interface library for node.js.
DraftLog - ๐ Create mutable log lines into the terminal, and give life to your logs!
nestjs-commander - A module for using NestJS to build up CLI applications
tui-rs - Build terminal user interfaces and dashboards using Rust
PyLaTeX - A Python library for creating LaTeX files
listr - Terminal task list
Bit - A build system for development of composable software.
react-pdf - ๐ Create PDF files using React
cli-table3 - Pretty unicode tables for the command line