|8 months ago||about 1 year ago|
|BSD 2-clause "Simplified" 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.
Golang backend with lots of raw SQL queries
5 projects | reddit.com/r/golang | 2 May 2022
Is there a downside to treating possible null values in DB as pointers in struct?
1 project | reddit.com/r/golang | 27 Feb 2022
There’s also this: https://github.com/guregu/null
Gonion - Golang Client for querying Tor network data
2 projects | reddit.com/r/golang | 29 Sep 2021
Unfortunately in Go, switching to *bool makes the api a little more awkward to use since users that need to set true or false have to define a local variable then use a pointer to that. Another option would be something like null, but that adds a dependency to your currently-dependency-free project. If anyone has a better solution to this pattern, I'd love to hear it.
Ask HN: What are some tools / libraries you built yourself?
264 projects | news.ycombinator.com | 16 May 2021
Night Patrol - https://github.com/jahed/night-patrol
I got tired of passing flags to Nightwatch to filter tests and looking through results to re-run failures. So I made an interactive CLI for all of that. I stopped using this once I moved to Cypress but even with Cypress' web interface, I feel something like Night Patrol would be a lot more productive.
Firebase Rules - https://github.com/jahed/firebase-rules
I didn't like how Firebase's RTDB rules were expressions in JSON strings so I built a library to build them using a lisp-like syntax to compose and re-use rules. Firebase also has its own rules language (Bolt) but I'd rather not learn and maintain yet another tool-specific language.
Promises - https://github.com/jahed/promises
This isn't a complete solution yet, I didn't get time to refine the API. But I really prefer using Promises as result types (a.k.a. either, left/right) rather than using async/await/try/catch. It's so much more powerful to write code in a way that doesn't care if your functions are async or sync. Again, kind of like a lisp, there's also power in not being tied to a language's keywords and being able to provide a more tailored vocabulary.
What are some alternatives?
trdsql - CLI tool that can execute SQL queries on CSV, LTSV, JSON and TBLN. Can output to various formats.
null - Nullable Go types that can be marshalled/unmarshalled to/from JSON.
Tabula - Extract tables from PDF files
Pion WebRTC - Pure Go implementation of the WebRTC API
gutenberg - A fast static site generator in a single binary with everything built-in. https://www.getzola.org
sqldb-logger - A logger for Go SQL database driver without modifying existing *sql.DB stdlib usage.
csvutil - csvutil provides fast and idiomatic mapping between CSV and Go (golang) values.
tera - A template engine for Rust based on Jinja2/Django
leapp - Leapp is the DevTool to access your cloud
Nullboard - Nullboard is a minimalist kanban board, focused on compactness and readability.
htmx - </> htmx - high power tools for HTML