Live data from Hacker News

Ask HN: What are some tools / libraries you built yourself?

news.ycombinator.com

61–70 of 617 posts

Re: Ask HN: What are some tools / libraries you built yourself?

#61
Lead Engineer at PAX Labs, we just open-sourced some Java utilities i wrote in the early days building service oriented architecture on dropwizard: https://github.com/PaxLabs/java-utils

A few things in there:

* `HibernateQuery` - wrapper around hibernate jpa implementation, because using the jpa criteria api is verbose as hell (seriously, even for java). Coming from having written Django, I wanted the ease of using Querysets in java

* Makemigrations - this seemed to be a missing hole in the java ecosystem. Our contractors were hand-writing sql migrations and using some framework that just ran them. Liquibase exists for managing migrations, hibernate can generate the schemas. This library is a dropwizard command to generate yml to migrate the old schema to the new one.

* generic pagination bundle

Re: Ask HN: What are some tools / libraries you built yourself?

#62
The most useful library I built is "dome()" a javascript function that would return a dom element out of an array. So that dome(["a",{href:"http://news.ycombinator.com"},["img",{src:"http://news.ycomb..."}]]) would return a clickable icon for example.

I wrote the function in 2007 and I'm still using it today. It's a handful lines of code.

Re: Ask HN: What are some tools / libraries you built yourself?

#63
I do quite a bit of data munging on multiprocessor Unix systems, and found (some remarkably lightweight) homemade Rust/py tools invaluable for getting stuff done.

A low-memory Unix map-reduce combinator - https://github.com/vlad17/slb

A sparse matrix parser (cpython equivalents are not parallel) - https://github.com/vlad17/svm2csr

A personal task planner when doing high-risk work which minimizes time to failure - https://github.com/vlad17/fdd

Re: Ask HN: What are some tools / libraries you built yourself?

#64
I've built a Swift library to generate 2D dungeon maps, based on Perl and Javascript code from Donjon [0]. The code is kinda ugly but it works and I think it is one of the nicer dungeon generators: https://github.com/wolf81/DungeonBuilder

The repo contains the original Perl and JavaScript code for reference.

I also wrote a small library to deal with time in an AD&D setting. This library is also in Swift and the code is quite clean I think: https://github.com/wolf81/Harptos

I built both libraries to use for a game, but I never finished it: https://www.youtube.com/watch?v=TsqMGCWeD6I

At some point I hope to do a re-write in LÖVE 2D.

---

[0]: https://donjon.bin.sh

Re: Ask HN: What are some tools / libraries you built yourself?

#65
A Python program to make an embeddable search engine for a static website: https://github.com/joe-crawford/Static-Site-Search

It indexes the site and generates search functionality in JavaScript (the index is just a static JSON file) that can be uploaded wherever JS/HTML/etc. files can be uploaded. I thought it might be useful for people with sites on GitHub pages or similar who don't want to use one of the major search engine company widgets.

Also my back of the envelope calculations were that the simple search index for a small–medium site won't be that big.

Re: Ask HN: What are some tools / libraries you built yourself?

#66
I made a platform for hosting game servers at scale. All of the options previously on the market at the time were highly limited, didn't really put a lot of effort into security, or had existed for 10+ years and didn't feel much need to innovate.

https://github.com/pterodactyl/panel

Kind of took off after posting here about it a few years back, and now it just kind of sustains itself with some bug fix inputs every now and then.

Re: Ask HN: What are some tools / libraries you built yourself?

#67
I wrote Helium https://github.com/geuis/helium-css a while back to help find unused css on a site. The process of building sites has changed a lot since then so it’s not as universally useful as it used to be. (...Glares at React...). Joking aside, it’s had a good run. I’ve had some ideas for a few years about an updated version but it would really be an entire new project.

Also created https://jsonip.com. Get your IP address in a json object. I created it a decade ago to solve some problem I had and have been running it ever since. Last I checked it’s supporting 4-6 million requests per day from a pretty wide group of users.

Re: Ask HN: What are some tools / libraries you built yourself?

#68
I wanted something that was fairly simple like Make, but that allowed me to write/manage my logic, and not have to learn a domain specific language. OTOH I didn't want to go through the hassle of having to install Meson or whatever, and learn how to configure it.

I built [Sane][0], which is a single-file library without dependencies, that is basically a decorator definition and a function export.

[0]: https://github.com/mikeevmm/sane

Re: Ask HN: What are some tools / libraries you built yourself?

#69
I made a small utility to help me search for JS code better. It's called @nikhilverma/ast-grep. It works really well for my use case but I hope to polish it more and release it more widely.

npx @nikhilverma/ast-grep '{ meta: { title: "___" }}' src/

This will search for any object with a key meta which is also an object and has a property called title which is any string. It uses AST for grepping so you don't need to worry about placement, whitespaces etc.

Re: Ask HN: What are some tools / libraries you built yourself?

#70
I made a CLI interface for the Microsoft Academic API so you can search for papers, download them, and generate HTML from a collection: https://github.com/mila-iqia/paperoni

I'm using it to automatically collect papers published by members of the research institute I work for, it's working pretty well.

I also made a small utility to sync folders on-demand on my different machines: https://github.com/breuleux/synecure

Most of the work is done by a library called bsync that someone else had written, which itself uses rsync, but I'm quite happy about the interface I made. By default it syncs home-to-home, so you don't have to specify both the source and destination directories. You can just type "sy -r remote" in ~/whatever to sync it to ~/whatever on the remote.

Post reply on HN