A portable hash map in C
A small, portable, linear probing hash map. Contribute to e-dant/salmagundi development by creating an account on GitHub.
A portable hash map in C launched on December 8, 2024 with 176 votes, #230 of 5,365 launches that month and more than 95% of that year's launches. The site was still online in September 2026, 1 year on.
In plain words
A portable hash map library written in C that provides a data structure for storing and retrieving key-value pairs. Designed for developers building C applications who need efficient hash table functionality. The project stands out as an open-source implementation offering portability across different systems, making it suitable for embedded systems and cross-platform C development.
written from the facts on this page · September 2026
From the sources
#include "salmagundi.h" #include <string.h> void do_stuff ( void ) { hm_t * map = hm_open ( hm_hash_rapidhash , hm_cmp_str ); char * k = "k" ; char * v = "v" ; hm_put ( map , k , strlen ( k ), v , strlen ( v )); hm_item_t stored = hm_get ( map , k , strlen ( k )); assert ( memcmp ( stored . k , k , strlen ( k )) == 0 ); assert ( memcmp ( stored . v , v , strlen ( v )) == 0 ); hm_close ( map ); } About A small, portable, linear probing hashfrom github.com
Does a similar job
all alternatives →
A hash array-mapped trie implementation in C2023 · github.com · ▲171Long-simmering side project that is finally ready to see the light. HAMTs are a cool persistent data structure and implementing one has been a lot of fun. Beyond the code, there is likely some value in the extensive and largely complete implementation docs; basic benchmarks are linked in the README, too. Kind of aiming to be "the libavl for HAMTs". That is obviously a high and aspirational bar but a distinct possibility if it stirs up a little interest and/or contribution. Anyways, it's time for this to go out, collect feedback and maybe even some use outside of toy projects. Let me…
Simple Hash Table Implementation for C2015 · github.com · ▲42Simple hash table implementation for C. Contribute to watmough/jwHash development by creating an account on GitHub.
A concurrent thread-safe hash map implemented in C++2017 · github.com · ▲17A concurrent thread-safe hash map implemented in C++ - kshk123/hashMap
I built a web framework in C2025 · github.com · ▲420a lightweight web framework in c. Contribute to ashtonjamesd/lavandula development by creating an account on GitHub.
- AS
Integer Map Data Structure2024 · github.com · ▲91This project presents a new data structure for storing ordered integer maps. The proposed data structure is a compressive, cache-friendly, radix tree that has performance comparable to an unordered map (`std::unordered_map`) and is an order of magnitude faster than an ordered map (`std::map`).
More dev tools this month
the category →

open-source IDE for thoughtful software design. Contribute to devdotfast/whiteboard development by creating an account on GitHub.
Dev tools · 27d ago · github.com

Contribute to reladraw/reladraw development by creating an account on GitHub.
Dev tools · 25d ago · github.com
OpenBot▲362Grok Bot alternative: free, local, open-source, multiplayer
Dev tools · 22d ago · openbot.run
Talanoa▲340Hi HN, I’m a fullstack developer, and honestly, I’ve lost count of how many side projects I’ve worked on over the years. But one idea kept coming back to me: a different kind of email client. It first came to me in 2014: “What if we could handle emails more like conversations?” Every year, I’d revisit this concept in my “Build Notes.” Ten years later, no one had built exactly what I had in mind — so I finally decided to do it myself. That’s how Talanoa was born. I wanted something focused on people, not timelines. I was tired of marking messages as unread just to remember to reply later, or…
Dev tools · 20d ago · talanoa.email
CoreSpeed▲332One MCP for everything your agents need: apps, memory, tools
Dev tools · 27d ago · corespeed.io
Source: Show HN post ↗