r/commandline

▲ 4 r/commandline+2 crossposts

I made revera, a tool that scores NPM packages before you blindly install them

So I wondered sometimes, how little info we have when we install NPM packages.. so I built revera... its a npm package scorer, but on steroids. It uses a complex sophisticated algorithm (still not perfect, but near-perfect) that nails at ranking NPM packages.. it gives every package a score and the score is determined on criterias such as maintainability, trust, package releases, downloads, much more..

the audit command scans the working directory for

it has the following extra features:

  • logging in with github for higher rate limits
  • why command for explaining a certain package's score
  • doctor for checking if everything is working
  • caching system which lives for 24h on local machine
  • and a customizable config

It would mean the world to me if you all could try it out and give feedback (bad or good)!

github repo: https://github.com/aaravmaloo/revera

npm package page: https://www.npmjs.com/package/@aaravmaloo/revera

u/aaravmaloo — 13 hours ago

Micro plugins

Hello everyone,

I apologize if this doesn't fully make sense. I am newer to coding. I am using MacOS terminal and have downloaded brew and micro as I enjoy using micro text editor. My issue is I am trying make like a shortcut for whenever I make a new .cpp file it autofills with a pre-existing text to start off with. For example what I used to do is have a .txt I would do cat ../example.txt > example.cpp so I could have whatever I had in the .txt autofill in my .cpp, but I thought maybe it'd be nice if I could bind that with a shortcut like Alt + q so it'd autofill when I open the new file. I have tried using bindings.json and plug that command in, but it's unsuccessful as it says "Alt-q is not a bindable event" I am hoping I can get some help with this. The .txt is just coding style guidelines for me to follow that I have adopted from school as it keeps my code a lot more readable and reminds me that I need to be adding comments even if it's just for me to get more practice in.

reddit.com
u/Perfect_Purchase574 — 1 day ago
▲ 47 r/commandline+5 crossposts

YCETL: a compile time STL like template library to generate data structures that can be used at runtimes

I posted this days ago but the 'automated admins took it down saying was generated by AI' as the formulation was maybe too academic. Trying now with other words.
Short storry: I wanted to generated python glue code for webgpu based on webgpu header. After exploring libclang and generating correct results, I wanted something more generic, more 'built in into C++'. At the beginning I thought will be easy with constexpr compile time tricks, but turned out the compile time 'runtime' is very restrictive. And I solved the challenges with ycetl. https://github.com/zokrezyl/ycetl

This is not a toy project, it is work of couple of months, fight with windmills of compile time runtime. If you see issues that can make it production ready, please share.

u/Ok_Path_4731 — 3 days ago
▲ 890 r/commandline+1 crossposts

Intellisense autocompletions inside of Bash

The completions are generated using Bash's existing completion framework (commonly scop/bash-completion or your own completion scripts). And if you don't have a completion script setup, flyline will try to synthesize one on the fly (😉) using man pages or --help output!

This is similar to https://github.com/microsoft/inshellisense but inshellisense only works for a hardcoded list of completions specifications and runs in a different process as Bash.

Flyline has a bunch of other features, so if you're interested you can check it out here: https://github.com/HalFrgrd/flyline. Thanks!

This software's code is partially AI-generated

u/gooddy — 4 days ago

git-remote-pqcrypt: Git remote helper and CLI tool for encrypted repository storage

I wanted my private projects to be accessible trough github on multiple different devices and have the ability to share access to other people, while at the same time having it encrypted at rest so github couldnt use it for AI training.

The first tool I found for this was gcrypt. It was missing support for anything other than PGP, written entirely in bash, lacked CLI tooling and it is dormant with last update being in 2024 and one of the biggest problem of all pushes being treated as force pushes with high chance of accidental data loss.

So I built an experimental where the binary acts both as a git remote helper and a unified CLI for key generation, user management and repository initialization, and supports local, (optional SFTP) and Git-backed storage backends. Encryption uses XWing for key encapsulation and XChaCha20Poly1305 for data encryption. It treats pushes like normal git with fast forward checks being the default and not allowing overwriting of remote unless force mode is used.

DISCLAIMER: THIS IS AN EXPERIMENTAL PROJECT, there hasnt been a formal security audit. DO NOT rely on this for any critical repositories.

Github

reddit.com
u/Frozenjob — 3 days ago

How can I edit the same file in two windows?

Hi.

I'm semi new to coding and I like having two windows side by side. One that I'm working on, the other with other files for reference.

I've reached a point where I'm jumping between files a lot and my files have gotten long enough that what I want to reference isn't in another file, but the code above.

I've been using Micro, opening multiple tabs for what I'm working on on one side and opening reference files on the other.

What I'd really like to do is just open all of my files (as tabs) at once one in both windows and freely move between them.

However, I find it annoying needing to reload files all the time.

Is there an editor that will sync multiple windows?

I might move to vim or emacs if there's a simple solution there. But I prefer Micro and Helix. (Helix doesn't even seem to let me reload a file)

Am I dumb and there's a better way instead of tabs to quickly switch between files? Should I use splits and not separate windows for side-by-side viewing?

Thanks for any tips!

EDIT: Thanks! I am now enlightened by splits! I always figured why learn another binding when my window manager can handle it. Now I understand! Thank you!

(Micro is real dumb with splits though. Helix is wonderful.)

reddit.com
u/Agent34e — 3 days ago
▲ 6 r/commandline+1 crossposts

Openleetcode – Run LeetCode solutions locally with open tests

This tool lets you run LeetCode problems for free on your own hardware, using an open suite of tests that are included in and developed within the project itself. The original LeetCode tests are locked behind a "paywall" (specifically, a submission delay for free users).

GitHub: https://github.com/therepanic/openleetcode

u/panic089 — 3 days ago

How do you install fast-moving CLI release binaries?

I've been running into this more often lately: a CLI tool publishes a new GitHub release, but the package-manager index I use is still a few versions behind.

For tools with prebuilt binaries, I started using a small installer instead of waiting or downloading archives by hand. The rough flow is:

```bash eget install junegunn/fzf eget install sharkdp/bat eget install --asset "windows,amd64,zip" owner/repo ```

It reads GitHub release assets directly, and also supports GitLab/Gitea, SourceForge, direct URLs, and internal URL templates.

Disclosure: I maintain it; it is not a paid product. It is not meant to replace Homebrew, Scoop, apt, or asdf. I use it for the gap where the upstream release exists but the package index or formula is lagging, or where the binary is internal.

Repo, if useful: https://github.com/inherelab/eget

I'm curious how people here handle this: wait for package indexes, download releases manually, use shell scripts, or something else?

u/inhereat — 3 days ago
▲ 48 r/commandline+3 crossposts

ShareClean: a local-first CLI to redact sensitive info from logs before sharing

Hi r/commandline, I’m the creator of ShareClean.

It’s a small Python CLI for cleaning logs, stack traces, config snippets, and terminal output before pasting them into GitHub issues, support tickets, Slack, support threads, or other public places.

ShareClean is meant to be a quick local safety pass before sharing text publicly.

Example:

cat app.log | shareclean --report

Input:

user=user@example.com
password=fake-secret-value
postgresql://app:fake-pass@db.example.com/app

Output:

user=[EMAIL REDACTED]
password=[REDACTED]
postgresql://app:[REDACTED]@db.example.com/app

Why I made it:

I kept seeing people paste debug output that accidentally included tokens, local paths, emails, or connection strings. ShareClean is meant to be a quick local safety pass before sharing text publicly.

A few details:

  • Local-first, no network calls
  • No telemetry
  • No runtime dependencies
  • Redacts passwords, API keys, bearer tokens, JWT-like values, emails, local user paths, and optionally private IPs
  • Has --check mode for scripts, hooks, and CI

This is not trying to replace full repo secret scanners like gitleaks or trufflehog. It’s for the smaller everyday moment where you’re about to paste logs somewhere and want to clean them first.

GitHub: https://github.com/OmarH-creator/ShareClean

Browser demo: https://omarh-creator.github.io/ShareClean/
(Demo is just to show the redaction behavior. Real use is local CLI.)

I’d appreciate feedback from people who use CLI tools often: does the workflow make sense, and are there redaction rules you’d expect in a tool like this?

u/JewelerBeautiful1774 — 5 days ago
▲ 3 r/commandline+2 crossposts

Grimoire: A Frieren and Witch Hat Atelier inspired task runner with interactive prompts

I built Grimoire (grim on crates.io), a cross-platform task runner inspired by Frieren and Witch Hat Atelier.

Also the tooling is inspired by just and make.

You define tasks (called Sigils) in a Grimoire.toml file and run them from the terminal. Grimoire lets you define multiple options for tasks that share the same structure but use different values, so instead of writing several nearly identical Sigils, you can define one and let the interactive TUI handle the selection.

It supports task dependencies, prevents dependency loops, and can run scripts written in Python, JavaScript, C/C++, and more.

If you like tools such as just or make but want built-in interactive prompts and multi-language support, I'd love to hear your thoughts.

GitHub: https://github.com/Vaishnav-Sabari-Girish/grimoire Install: cargo install grim

u/ImaginaryElephant336 — 5 days ago
▲ 296 r/commandline+2 crossposts

curl qrcode.show

QRcode.show is a free QR code generation service that lets you generate QR codes from anywhere that has network access without installing dedicated software. e.g. Remote servers, low-end (IOT) devices etc.

u/Any-Lack-7699 — 6 days ago
▲ 69 r/commandline+1 crossposts

[OC] A mood tracker that lives in the terminal

I first came across this post about mood tracking a few years ago. Since then, I've had a script and logged how I felt almost every day for the past 4 years.

Finally had some time recently to rewrite and package it in Rust (~1mb) so I figured I’d share it here in case anyone else finds it useful or interesting!

https://github.com/qiz-li/feeling

u/N-l1 — 6 days ago
▲ 10 r/commandline+1 crossposts

Ghostty vs Kitty on Mac?

I’m deciding on a new terminal emulator and I finally shortlisted down to Kitty and Ghostty. Ghostty is a much newer terminal but it seems so much more polished and “native” than Kitty to me (like design-wise or font rendering). Everyone is gushing about it too (though that could just be a case of overhype). What I’m concerned about however is performance. Sure, Ghostty is nicer but based on what I have read it seems Kitty is more lightweight. Then again, these benchmarks are done on Linux not MacOS. I’m curious if anyone who has used both can offer their insights into this.

reddit.com
u/dancerinthelimelight — 6 days ago

kew (terminal music player) 4.1 is out

kew 4.1 adds custom layouts, auto-resume, crossfade, an improved visualizer.

kew is also available on Windows now.

The sound system was rewritten in v4.0 and in this version the UI system has been rewritten using the MVU pattern. There are still smaller areas that need improvement, but most of the app is now in a much better shape.

Windows installer here:
https://github.com/ravachol/kew/releases/latest

More info here:
https://github.com/ravachol/kew
https://codeberg.org/ravachol/kew

EDIT: Added the windows installer.

u/kew-player — 6 days ago
▲ 159 r/commandline+1 crossposts

POSIX everywhere

What a typical old guy who doesn't play with colors, rice, shadows and dependencies on Python, Node.js, Rust, Go and so on and go on, I use every device with MirBSD, but I probably wanted to be the only one to show you a piece of code on the attached image of my portable UNIX terminal.

For many it will definitely be a cognitive dissonance, because there are no fountains here. Nor wasted time on an idiotic compilation. For those who know how a shell works without plugins, helpers and a lot of gadgets, this is an example of a tool to check the disk on the device.

Unfortunately, there is no neofetch to show what a hacker I am (joke)... Indeed, this script written on your knee in 2 minutes will work everywhere, on any system, on any distribution, on the washing machine, on the refrigerator even on the toaster if it has a processor :)

I invite you to the discussion, I will be happy to read about those pythons, rust or other toys that die every quarter.

Greetings

u/Pegasusw404 — 7 days ago

A terminal RPG that doubles as a productivity system.

I've spent years trying different task managers and eventually realized I spend most of my day in a terminal anyway, so I started building something that felt more like a game than a productivity app.

The result is Questline.

Features include:

Quest-based task management Projects and milestones Scrolls (notes) Focus sessions Character classes XP, levels, achievements, and relics Local-first storage Linux, macOS, and Windows support

The unusual part is the worldbuilding.

Instead of generic productivity terminology, the app has its own lore and ongoing story chapters. The current community chapter is called The Notification Swarm, where every user's completed tasks and focus sessions contribute toward defeating a shared world boss known as the Swarm Regent.

Current Orders include:

Task Paladins Code Warlocks Mind Sages Systems Architects Time Chronomancers Arch Accountants AI Crusaders

It started as a simple CLI todo list and somehow turned into an entire fantasy realm.

I'd love feedback from fellow terminal users.

Screenshots and downloads:

https://questline.gibranlp.dev

u/gibranlp — 6 days ago

"open ."

I tried open . but Terminal returned open[61599:82106350] CFURLCopyResourcePropertyForKey failed because it was passed a URL which has no scheme

The tutorial says it's supposed to open Finder. Can anyone suggest a fix?

reddit.com
u/toast_host — 5 days ago