

-
In the category of old unmaintained tools:
- https://github.com/linkdd/manyssh : Before discovering ansible/puppet/etc...
-
CodeRabbit
CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
-
- https://github.com/linkdd/i3tools : For when I was using i3wm
-
- https://github.com/linkdd/xautostart : Also for when I was using i3wm without a Display Manager
-
I wrote this (at work) to update versions in our projects from one place, and even partial versions. Saves me some headache and mental space every time. I know there are competitors but none I found was just simple, everything else was bloated with Git-integration or regex search instead.
https://gitlab.com/MaxIV/app-maxiv-semver
-
-
https://github.com/travisjungroth/algo-drills
A tiny script that adds articles I want to see again onto my todo list:
-
Nutrient
Nutrient – The #1 PDF SDK Library, trusted by 10K+ developers. Other PDF SDKs promise a lot - then break. Laggy scrolling, poor mobile UX, tons of bugs, and lack of support cost you endless frustrations. Nutrient’s SDK handles billion-page workloads - so you don’t have to debug PDFs. Used by ~1 billion end users in more than 150 different countries.
-
-
Not small, but myopic in a way.
I've been tinkering on and off with my own programming language for the last couple of years: http://www.adama-lang.org/
The key motivation is dealing with the complexities of managing all the state between people as they play a game with a strong boundary for privacy.
I am debating what my next steps are with what I've learned. Do I focus on growing things around it, or do I abandon yet another project and do something that might actually achieve success.
-
As a Wikimedian who used to spend sleepless nights editing on the Malagasy language Wikipedia and Wiktionary, I have been developing botjagwar (https://github.com/radomd92/botjagwar) on and off for the last 10 years. More details at https://github.com/radomd92/botjagwar/wiki/Backstory
It's mostly bot scripts written in Python. Data is stored in a self-hosted PostgreSQL. In addition to a backend I'd written myself, I also use PostgREST. and a with a rather rustic front-end was written in 2020 (https://github.com/radomd92/botjagwar-frontend) as a COVID lockdown side-project. Other scripts also use Redis as a page cache to speed up operation involving a large number of page reads.
-
As a Wikimedian who used to spend sleepless nights editing on the Malagasy language Wikipedia and Wiktionary, I have been developing botjagwar (https://github.com/radomd92/botjagwar) on and off for the last 10 years. More details at https://github.com/radomd92/botjagwar/wiki/Backstory
It's mostly bot scripts written in Python. Data is stored in a self-hosted PostgreSQL. In addition to a backend I'd written myself, I also use PostgREST. and a with a rather rustic front-end was written in 2020 (https://github.com/radomd92/botjagwar-frontend) as a COVID lockdown side-project. Other scripts also use Redis as a page cache to speed up operation involving a large number of page reads.
-
-
remarkable-cli
An unofficial command line interface (CLI) for interacting with the Remarkable paper tablet.
I use this tool on a daily basis to offline backup my handwritten notes.
https://github.com/awwong1/remarkable-cli
-
I bundled together a small collection of sysadmin/scripting-tools here:
https://github.com/skx/sysbox
Those are probably amongst the things that I use most often which are non-standard.
-
-
diffimg
Differentiate images in python - get a ratio or percentage difference, and generate a diff image
I built this image differentiation tool to automate comparison of images generated by two different (one legacy, one replacement) image processing services: https://github.com/nicolashahn/diffimg
Seems to have become useful for a lot of other people, which I didn't really expect.
-
-
programmer-calculator
Terminal calculator made for programmers working with multiple number representations, sizes, and overall close to the bits
-
m4b-tool
m4b-tool is a command line utility to merge, split and chapterize audiobook files such as mp3, ogg, flac, m4a or m4b
m4b-tool[1] - merge, split and edit audio books
graft[2] - file transfer utility with mdns and sftp server
look[3] - a log file watcher
pilabor[4] - a hugo blog to manage my personal notes
[1] https://github.com/sandreas/m4b-tool/
-
-
-
-
SIM Notes, a wysiwig markdown notes taking tool, based on Notational Velocity. It's a tool I literally tailored to my needs: 100% flat markdown files, in-place rendering, no structure, no tags, but a powerful and fast search. It's my own perfect zettelkasten.
Unfortunately I had to stop working on it when I had a burnout, so it's still buggy but good enough for me to use it every day.
I'm very slowly working on a v2, with a simple localhost daemon and no Electron.
https://github.com/scambier/SIM-Notes
-
I wrote https://github.com/banga/git-split-diffs mainly to scratch an itch about not having side by side git diffs in the terminal, then ended up adding more fancy features like syntax highlighting and it got somewhat popular.
-
-
I created this tool for fun to experiment with my raspberry pi
Its a tool that allows you to run server commands via text messages
https://github.com/mtdevss/server-text
Its a fun program to play around with
-
I've built a tiny dependency installer targeted at old systems / clusters where you need to bootstrap modern libraries and tools from an old GCC.
It's very small, just a few hundred lines of Bash.
https://github.com/W4RH4WK/DIFAS
-
drive.py
Disc comare tool
https://github.com/web3cryptowallet/drive-py
I made it to work with unstructured data with any amount of size
-
KeenWrite
Discontinued Free, open-source, cross-platform desktop Markdown text editor with live preview, string interpolation, and math.
Here's a shell script template that helps parse command-line options and informs its users of any necessary commands that are required to run the script successfully:
https://dave.autonoma.ca/blog/2019/05/22/typesetting-markdow...
Example usage showing how to use the template script:
https://github.com/DaveJarvis/keenwrite/blob/master/installe...
A more recent version is available at:
https://github.com/DaveJarvis/keenwrite/blob/master/scripts/...
-
I have a couple of projects that I’ve used over the years. My favourite is probably Architect, which is yet another Arch installer configured with a little bit of YAML and all in bash
https://github.com/jnsgruk/architect
-
distribution
Short, simple, direct scripts for creating ASCII graphical histograms in the terminal. (by wizzat)
I wrote an in-terminal histogram tool[0] because... that's when/where I always need histograms.
[0] https://github.com/wizzat/distribution
-
I made an editor for markdown front matter. Useful if you're building sites using Jekyll and similar.
https://github.com/ognjenio/front-matter-editor
-
I have not found a good ebook reader that keeps my state on edge devices and syncs to a server my position. When I had more time to read manga I built this: https://github.com/gravypod/ComicReader
It takes a folder of webp files and remembers your page on local storage. It's not perfect but it's ok. It also prefetches the next 10 or so pages which is fine for reading on a train.
Another, tool that sends wake-on-lan packets and shutdown packets to a windows machine that allowed me to steam stream from a dedicated windows machine: https://github.com/gravypod/SteamStreamScripts
-
I have not found a good ebook reader that keeps my state on edge devices and syncs to a server my position. When I had more time to read manga I built this: https://github.com/gravypod/ComicReader
It takes a folder of webp files and remembers your page on local storage. It's not perfect but it's ok. It also prefetches the next 10 or so pages which is fine for reading on a train.
Another, tool that sends wake-on-lan packets and shutdown packets to a windows machine that allowed me to steam stream from a dedicated windows machine: https://github.com/gravypod/SteamStreamScripts
-
-
I've been working on a todo app built on todo.txt. It's a fork of another app, Todour, which I've heavily enhanced. It's a work in progress, it is ugly but very functional.
https://github.com/shawnaxsom/inizio
Being an engineering manager, a good todo system is a must. I need to be able to write to it quickly in an organized manner. I need it to filter quickly, being able to tell it "Show me all of my highest priority tasks that don't have anything to do with person XYZ who is out-of-office, hide learning tasks".
-
I was annoyed by the seemingly over-engineered tools for screen tracking, so I wrote one myself in ~50 LOC, which simply uses ffmpeg to create a screenshot every X seconds in a very low resolution:
https://github.com/instance01/mac-screenshot-tracker
It's super hackable and gets the job done.
-
https://github.com/DontShaveTheYak/jenkins-std-lib A Jenkins shared library with a couple cool things like running GitHub Actions on Jenkins.
https://github.com/DontShaveTheYak/cloud-radar Unit and Functional testing of AWS Cloudformation templates. The unit testing part allows you to test locally without needing AWS creds.
https://github.com/DontShaveTheYak/sebs Stateful Elastic Block Storage was created so that you could make sure that a AWS ec2 instance always had the same EBS volume mounted to it. Really handy for a Ec2 instance in an ASG with a count of 1.
-
https://github.com/DontShaveTheYak/jenkins-std-lib A Jenkins shared library with a couple cool things like running GitHub Actions on Jenkins.
https://github.com/DontShaveTheYak/cloud-radar Unit and Functional testing of AWS Cloudformation templates. The unit testing part allows you to test locally without needing AWS creds.
https://github.com/DontShaveTheYak/sebs Stateful Elastic Block Storage was created so that you could make sure that a AWS ec2 instance always had the same EBS volume mounted to it. Really handy for a Ec2 instance in an ASG with a count of 1.
-
https://github.com/DontShaveTheYak/jenkins-std-lib A Jenkins shared library with a couple cool things like running GitHub Actions on Jenkins.
https://github.com/DontShaveTheYak/cloud-radar Unit and Functional testing of AWS Cloudformation templates. The unit testing part allows you to test locally without needing AWS creds.
https://github.com/DontShaveTheYak/sebs Stateful Elastic Block Storage was created so that you could make sure that a AWS ec2 instance always had the same EBS volume mounted to it. Really handy for a Ec2 instance in an ASG with a count of 1.
-
TLSential
A server for providing short-lived TLS certificates to all services within a firewall restricted network.
At my company we used to pass around a single wildcard cert for our corporate domain. All servers, including many internal servers, all had the same long lived cert.
I made a tool to make it easy for us to deploy Let’s Encrypt certs for internal only servers that would normally not be able to do an http challenge against LE.
https://github.com/Imageware/TLSential
One of the projects im most proud of. :)
-
-
-
-
-
los-opinionated-git-tools
A collection of Very Opinionated Git tools and aliases to aid my Git workflow. Will these aid yours?
-
A long time ago, before Spotify had support for multiple devices where one could act as a remote and control the other, I wrote a tool called Shpotify: https://github.com/hnarayanan/shpotify . It is a simple Bash/AppleScript.
The primary usecase for me was to SSH tunnel into a media centre Mac in my living room and control music on Spotify. I released it on GitHub and it has grown a lot in popularity amongst people who like to do a lot of their computing in the shell.
-
Drove / automated a currency trading application using https://www.autohotkey.com/
The amount of error handling probably made it more worthwhile to learn the actual automation language, but it worked.
-
I built up a web dev stack over the years while working on personal projects and client projects. First it was all together, but now it's separate libraries and a template app:
db: https://github.com/ferg1e/pajamaSQL
-
-
-
-
template user-based app: https://github.com/ferg1e/screen-name
-
bluecircle-json-interface-generator
A utility to read your Java JAX-RS methods, and generate TypeScript interfaces and AJAX calls to use those interfaces.
A tool that will read your Java REST endpoints, and make TypeScript interfaces and invocation functions, so you can pretend your React front-end is using DCE again like it's 1999.
https://github.com/BlueCircleSoftware/bluecircle-json-interf...
-
A tool that will read your Java REST endpoints, and make TypeScript interfaces and invocation functions, so you can pretend your React front-end is using DCE again like it's 1999.
https://github.com/BlueCircleSoftware/bluecircle-json-interf...
-
A tool for visualizing log file volume over time in your terminal [1]. Useful for quickly getting a handle on traffic patterns during a production incident. This began as a scratch-the-itch project and was also the first useful thing I made in Rust. Two itches scratched :)
A tool for visualizing ping latency as a heatmap [2]. My Macbook's wifi had developed a severe latency stutter every ~500ms that was driving me nuts when using interactive tools like SSH. It was very satisfying to visualize it and see the pattern, and it helped to narrow the list of possible causes.
[1] https://github.com/acj/krapslog-rs
-
-
I built a documentation platform [1] for work since I didn't want to worry about licensing costs (With something like Confluence) being a factor, limiting potential access, when it comes to documenting and sharing knowledge.
I also wrote a simple little PHP script [2] to check (And email) SSL certificates to help keep on top of things.
[1]: https://github.com/BookStackApp/BookStack
-
-
-
-
notes
A zero dependency shell script that makes it really simple to manage your text notes. (by nickjj)
A whole bunch of little things, mainly command line tools.
Most of them are open source and also have extensive documentation and a screencast video going over them.
In no specific order:
- https://github.com/nickjj/notes
- https://github.com/nickjj/invoice
- https://github.com/nickjj/wait-until
And a few recent little scripts to solve specific things:
- https://nickjanetakis.com/blog/using-ffmpeg-to-get-an-mp3s-d...
- https://nickjanetakis.com/blog/a-shell-script-to-keep-a-bunc...
- https://nickjanetakis.com/blog/bash-aliases-to-prepare-recor...
-
A whole bunch of little things, mainly command line tools.
Most of them are open source and also have extensive documentation and a screencast video going over them.
In no specific order:
- https://github.com/nickjj/notes
- https://github.com/nickjj/invoice
- https://github.com/nickjj/wait-until
And a few recent little scripts to solve specific things:
- https://nickjanetakis.com/blog/using-ffmpeg-to-get-an-mp3s-d...
- https://nickjanetakis.com/blog/a-shell-script-to-keep-a-bunc...
- https://nickjanetakis.com/blog/bash-aliases-to-prepare-recor...
-
wait-until
A zero dependency Bash script that waits until a command of your choosing has run successfully.
A whole bunch of little things, mainly command line tools.
Most of them are open source and also have extensive documentation and a screencast video going over them.
In no specific order:
- https://github.com/nickjj/notes
- https://github.com/nickjj/invoice
- https://github.com/nickjj/wait-until
And a few recent little scripts to solve specific things:
- https://nickjanetakis.com/blog/using-ffmpeg-to-get-an-mp3s-d...
- https://nickjanetakis.com/blog/a-shell-script-to-keep-a-bunc...
- https://nickjanetakis.com/blog/bash-aliases-to-prepare-recor...
-
I made a little script for quickly spinning up KVM virtual machines on my testing rig. It just grabs a minimal Ubuntu image, preseeds it with a ssh key, clones a VM on the default NAT network, and sets up the disk size/CPUs/memory allocation. It's not meant to replace orchestration or config management tools, just for quick and dirty VMs.
https://github.com/noahbailey/kvmgr
-
Spotify playlists are great but I would like to be able to shuffle from a combination of them. Playlist folders do not cut it because then all combinations must form a tree. So I made a shell script to create those combined playlists [1]!
[1]: https://github.com/axelf4/nixos-config/blob/da60a70680984769...
-
I wrote qlip [0], a stupid-simple shell utility written in 5 lines of Rust that prints your clipboard as a QR code to stdout. I used it as a clipboard sharing utility before KDE Connect fixed their universal clipboard feature. It should compile for any platform that supports Rust, and you can install it to your system in a few seconds using `cargo install`.
[0] https://github.com/toasterrepairman/qlip
-
I use NYC's bike share system (Citibike) quite a bit. Unfortunately the app's map of bike/dock availability [0] requires a lot of scrolling and tapping to get info, in my opinion. It definitely looks pretty, but it's not so functional. So, I built my own version [1] that is far more information dense, but much uglier.
[0]: https://apps.apple.com/us/app/citi-bike/id641194843
[1]: https://github.com/kevindong/bbam
-
hbr
handbrake runner - runs HandBrakeCLI with settings specified in a keyfile. Allows for repeatable and easily modified encoding.
I wrote hbr (handbrake runner) [0]. It takes a global config, a per-file config, and individual outfile sections then calls HandBrakeCLI to encode video. I use it to encode movies/series from optical media.
Additionally there is hbscan.py to generate a list of potential outfiles from handbrake's --scan argument. One day I'd like to integrate it with hbr (in C) using peg/leg [1]. Currently using pyparsing.
This is still a lot of manual work, but it saves doing it twice. When you find a mistake in an encode there's a log with the file, and it's easy to go back and modify the keyfile and re-encode it.
[0] https://github.com/epakai/hbr
[1] https://www.piumarta.com/software/peg/ (not mine)
-
That was several years ago, and now [rofimoji](https://github.com/fdw/rofimoji) can do all UTF-8 characters (and custom ones), works on Wayland and is packaged for some distros. I'm so happy how my tiny project turned out and how many people helped with PRs and issues.
Professionally, I (and the whole team) lost track of our deployed artifacts, as we're not on a release schedule but also not really on continuous deployment. Mainly, we released when someone noticed that a release has been running stably on staging for a while.
-
-
Program that interfaces AutoHotKey and youtube-dl so that I can easily play or download things with shortcuts. Haven't played a youtube video from the actual website in years (don't tell anyone).
Program that lets me keep track of the last time I did something (brush teeth, exercise, vacuum the floors, etc), which motivates me to do these things more regularly.
Program to convert between various units of bits, mostly so that I could do a calculation regarding download speeds.
Program to run programs without a shell, so that I could run certain commands on startup (it was faster to implement than to find an existing solution) [1].
Library to dump various useful information out of a Pokemon ROM, so that I could play the game more efficiently [2].
Playing card library, so that I could simulate certain solitaire games and figure out the chances of winning [3].
Program to quickly parse and generate markdown files from source code comments, existing solutions being too complex or not working quite the way I wanted [4]. This one ended up being a real winner, because it let me stop worrying about presentation and get back to writing code/documentation.
There's this sort of multi-tool I've been working on for game development on Roblox (very niche) [5]. A high-level overview is that it uses scripting to streamline certain workflows that would otherwise be tedious, such as parsing proprietary file formats, interacting with web APIs, or assembling a project into a final product. It's a winner because it lets me make even more tools for myself.
[1]: https://github.com/Anaminus/nosh
-
-
-
-
-
- give my name + phone number to people (avoids spelling issues and typos).
I simply wrote some text corresponding to a wifi network and a vcard (see [0] for how this looks like) and show that text as QR code.
[0]: https://github.com/zxing/zxing/wiki/Barcode-Contents
-
I wrote a free Mac app to OCR any text on screen[1].
macOCR is a command line app that enables you to turn any text on your screen into text on your clipboard. When you envoke the ocr command, a "screen capture" like cursor is shown. Any text within the bounds will be converted to text.
You could invoke the app using the likes of Alfred.app, LaunchBar, Hammerspoon, Quicksilver, Raycast etc.
[1] https://github.com/schappim/macOCR
-
Etsy-API-to-Jekyll
Really simple scripts to interface with the Etsy API and retrieve data in Jekyll-friendly formats.
Yes, it's open source. Here's the link [1].
I'm sure there's some sort of rule against posting code this bad on HN, bit worried it'll get my hacker status revoked :). Was a total Ruby n00b when I wrote this (still am) - haven't even worked out how to handle offsets in the Etsy API.
Anyway, it does a good job of creating Jekyll collection items from Etsy listings – here's the site I'm building with it, though it's still a work-in-progress [2].
[1] https://github.com/MattKevan/Etsy-API-to-Jekyll
[2] https://dev.thedoveandtheseagull.com
-
pdftilecut
pdftilecut lets you sub-divide a PDF page(s) into smaller pages so you can print them on small form printers.
-
I wrote my own CSS reset stylesheet because I was tired of copying over the same additions to normalize.css on every new project and wanted to install it directly from npm.
https://github.com/nicolas-cusan/destyle.css
-
css-named-colours-picker
Interactive tool for exploring and selecting CSS named/extended colours. Implemented as a filterable (multi-column) sortable table widget. Useful for choosing colours for web development.
-
-
- a Makefile to export and upload pico8 games to itch.io: https://github.com/tducasse/pico8-deploy
-
- a tiny in memory database in JavaScript, that I used as a way to keep a global state server side in a multiplayer game https://github.com/tducasse/js-db
-
-
ProcessAffinityControlTool
PACT is a library and a tool that allows you to section off different processes in to different cores/threads on your CPU automagically.
-
-
Small application to get listing of torrents from IMDB's watch list: https://github.com/navyad/moviematch
-
https://github.com/mterron/swuniq
Like uniq but works on unsorted input to be used as a pipe filter with constant memory usage.
Feels like this should exist before I made it but all the options that I could find had unbounded memory requirements. I use it in long running pipelines all the time.
-
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives