Bash/Shell Autocompletion for Composer

The other day I opened up a PHP project that I hadn’t worked on in a while. No longer remembering which Composer Scripts I had defined for it, I needed to take a peek inside composer.json to see which ones were available to me. Then it hit me: why is there no autocompletion for composer …

Instagram Terminal Feed

Forget about that Instagram for Windows 95, and go for the real deal: Instagram on the CLI: Sometimes checking your instagram during work is kind of strange, so why not check your instagram inside your terminal? OK… I know checking this during work is still strange… 😑 To be honest, I did this just for …

Trigger macOS notifications from the CLI with node-notifier-cli

$ notify -t “Hello” -m “My Message” -s –open http://github.com $ notify -t “Agent Coulson” –icon https://raw.githubusercontent.com/mikaelbr/node-notifier/master/example/coulson.jpg $ notify -m “My Message” -s Glass $ echo “My Message” | notify -t “Hello” Installation per NPM/Yarn: yarn global add node-notifier-cli TIP: As with many packages you can also run it using the aforementioned npx: npx -p …

Easily Start and Stop Docker Compose Projects with Captain

Jens Segers has created a handy shell script to easily start/stop Docker Compose based projects: Captain searches for docker-compose projects in your $HOME folder and allows you to start and stop those projects by passing a part of the parent directory name. Let this small recording of Captain in action convince you: Captain → Related: …

Axel — Command Line Download Accelerator

Via @benschwarz: Axel tries to accelerate the downloading process by using multiple connections for one file, similar to DownThemAll and other famous programs. It can also use multiple mirrors for one download. Axel → Getting sudden flashbacks to this old fart here: Think it was 1999 or 2000 when I first use FlashGet (then named …

Interacting with the iOS Simulator from the Command Line using simctl

Wasn’t aware of this, but turns out one can control (and interact with) the iOS Simulator straight from the command line. There’s no need to install anything new though. The tool we’re going to be using is already on our Mac, hiding inside the xcrun command, which gets installed with Xcode. It’s called simctl. Here’s …

Run a Terminal task list with listr

With listr one can define a set of tasks to run: const execa = require("execa"); const Listr = require("listr"); const tasks = new Listr([ { title: "Git", task: () => { return new Listr([ { title: "Checking git status", task: () => execa.stdout("git', ['status', '–porcelain"]).then(result => { if (result !== "") { throw new Error("Unclean …