{"slug": "gnu-recutils", "name": "GNU recutils", "category": "databases", "category_name": "Databases", "description": "", "recommenders": 5, "commenters": 5, "warners": 0, "score": 3.803, "rising": 1.02, "first": "2025-12-14", "latest": "2026-08-31", "why": "I use the .rec format whenever I want a database maintained in git/github.", "why_is_quote": true, "has_verdict": false, "sentiment": {"recommend": 5, "neutral": 0, "compare": 0, "warn": 0}, "spark": [0, 3, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0], "listed": true, "loved": [], "caveat": "", "short_quote": "I use the .rec format whenever I want a database maintained in git/github.", "kind": "", "icon": true, "domain": "gnu.org", "github_repo": null, "official_url": "https://www.gnu.org/software/recutils/", "pricing": "", "aliases": ["GNU recutils"], "verdict": null, "praise": [{"label": "", "summary": "", "quotes": [{"id": 792212608, "item_id": 49513288, "url": "https://news.ycombinator.com/item?id=49513288", "by": "kelseyfrog", "date": "2026-08-31", "version": null, "stance": "recommend", "quote": "Anyone who doesn't know of recfiles is doomed to reimplement it(poorly).", "excerpt": "> A memoryfield page looks like this: --- title: Carbon Fibre Woks created: '2026-03-01T09:00:00Z' updated: '2026-08-22T14:30:00Z' uuid: 6aa615f0-486f-48a7-a210-ba4f5ff18c8b summary: Thermal properties of carbon fibre cookware --- Carbon fibre woks conduct heat evenly, but... So basically recfiles[1], and an entire suite of tools replaced by fopen and sed. Anyone who doesn't know of recfiles is doomed to reimplement ", "context": "", "use_case": "Structured plaintext record files", "switched_from": "", "story": "Agent memory as a file format"}, {"id": 791864096, "item_id": 49491506, "url": "https://news.ycombinator.com/item?id=49491506", "by": "brabel", "date": "2026-08-29", "version": null, "stance": "recommend", "quote": "You should've used recutils probably", "excerpt": "You should've used recutils probably :) https://labs.tomasino.org/gnu-recutils/", "context": "", "use_case": "Plain-text record database", "switched_from": "", "story": "TurboKV: Insanely fast Rust key-value store"}, {"id": 741178080, "item_id": 46323630, "url": "https://news.ycombinator.com/item?id=46323630", "by": "Imustaskforhelp", "date": "2025-12-19", "version": null, "stance": "recommend", "quote": "I am interested to hear what your thoughts on recutils are", "excerpt": "Pardon me but is there any way that openxml can be converted to a format similar to https://www.gnu.org/software/recutils/ If openxml can be converted to csv/similar perhaps which can be converted to recutils Recutils supports both mdb (Microsoft Access database files)/csv files to/from recutils I saw this project on a recent hackernews comment and I had seen some comments there about how it does / can work decently ", "context": "", "use_case": "", "switched_from": "", "story": "The immortality of Microsoft Word"}, {"id": 740286016, "item_id": 46267876, "url": "https://news.ycombinator.com/item?id=46267876", "by": "ndegruchy", "date": "2025-12-14", "version": null, "stance": "recommend", "quote": "I love recutils.", "excerpt": "I love recutils. The database format is simple enough, it has a bunch of options for constraints, and it has Bash integration and a great Emacs mode to search, edit and verify the integrity of the database. Sure, it's not as fast as SQLite or bigger systems, but often it's enough for smaller projects.", "context": "", "use_case": "plain text database for small projects", "switched_from": "", "story": "GNU recutils: Plain text database"}, {"id": 740273248, "item_id": 46267078, "url": "https://news.ycombinator.com/item?id=46267078", "by": "saulpw", "date": "2025-12-14", "version": null, "stance": "recommend", "quote": "I use the .rec format whenever I want a database maintained in git/github.", "excerpt": "I use the .rec format whenever I want a database maintained in git/github. The format is ideal if you want reasonable data diffs.", "context": "", "use_case": "git-tracked database", "switched_from": "", "story": "GNU recutils: Plain text database"}]}], "caveats": [], "who": [], "tags": [], "use_cases": ["structured plaintext record files", "plain-text record database", "plain text database for small projects", "git-tracked database"], "compared": [], "makers": [], "threads": [{"url": "https://news.ycombinator.com/item?id=46265811", "title": "GNU recutils: Plain text database", "mentions": 3}, {"url": "https://news.ycombinator.com/item?id=49508317", "title": "Agent memory as a file format", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=49486334", "title": "TurboKV: Insanely fast Rust key-value store", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=46313518", "title": "The immortality of Microsoft Word", "mentions": 1}], "sentiment_by_month": {"2025-11": {}, "2025-12": {"recommend": 3}, "2026-01": {}, "2026-02": {}, "2026-03": {}, "2026-04": {}, "2026-05": {}, "2026-06": {}, "2026-07": {}, "2026-08": {"recommend": 2}, "2026-09": {}, "2026-10": {}}, "versions": [], "version_unnamed": 0, "family_ref": null, "runs_on": null, "lines": [], "quotes": [{"id": 792212608, "item_id": 49513288, "url": "https://news.ycombinator.com/item?id=49513288", "by": "kelseyfrog", "date": "2026-08-31", "version": null, "stance": "recommend", "quote": "Anyone who doesn't know of recfiles is doomed to reimplement it(poorly).", "excerpt": "> A memoryfield page looks like this: --- title: Carbon Fibre Woks created: '2026-03-01T09:00:00Z' updated: '2026-08-22T14:30:00Z' uuid: 6aa615f0-486f-48a7-a210-ba4f5ff18c8b summary: Thermal properties of carbon fibre cookware --- Carbon fibre woks conduct heat evenly, but... So basically recfiles[1], and an entire suite of tools replaced by fopen and sed. Anyone who doesn't know of recfiles is doomed to reimplement ", "context": "", "use_case": "Structured plaintext record files", "switched_from": "", "story": "Agent memory as a file format"}, {"id": 791864096, "item_id": 49491506, "url": "https://news.ycombinator.com/item?id=49491506", "by": "brabel", "date": "2026-08-29", "version": null, "stance": "recommend", "quote": "You should've used recutils probably", "excerpt": "You should've used recutils probably :) https://labs.tomasino.org/gnu-recutils/", "context": "", "use_case": "Plain-text record database", "switched_from": "", "story": "TurboKV: Insanely fast Rust key-value store"}, {"id": 741178080, "item_id": 46323630, "url": "https://news.ycombinator.com/item?id=46323630", "by": "Imustaskforhelp", "date": "2025-12-19", "version": null, "stance": "recommend", "quote": "I am interested to hear what your thoughts on recutils are", "excerpt": "Pardon me but is there any way that openxml can be converted to a format similar to https://www.gnu.org/software/recutils/ If openxml can be converted to csv/similar perhaps which can be converted to recutils Recutils supports both mdb (Microsoft Access database files)/csv files to/from recutils I saw this project on a recent hackernews comment and I had seen some comments there about how it does / can work decently ", "context": "", "use_case": "", "switched_from": "", "story": "The immortality of Microsoft Word"}, {"id": 740374368, "item_id": 46273398, "url": "https://news.ycombinator.com/item?id=46273398", "by": "saulpw", "date": "2025-12-15", "version": null, "stance": "neutral", "quote": "", "excerpt": "https://visidata.org/formats We keep that list up to date.", "context": "", "use_case": "", "switched_from": "", "story": "GNU recutils: Plain text database"}, {"id": 740286016, "item_id": 46267876, "url": "https://news.ycombinator.com/item?id=46267876", "by": "ndegruchy", "date": "2025-12-14", "version": null, "stance": "recommend", "quote": "I love recutils.", "excerpt": "I love recutils. The database format is simple enough, it has a bunch of options for constraints, and it has Bash integration and a great Emacs mode to search, edit and verify the integrity of the database. Sure, it's not as fast as SQLite or bigger systems, but often it's enough for smaller projects.", "context": "", "use_case": "plain text database for small projects", "switched_from": "", "story": "GNU recutils: Plain text database"}, {"id": 740273248, "item_id": 46267078, "url": "https://news.ycombinator.com/item?id=46267078", "by": "saulpw", "date": "2025-12-14", "version": null, "stance": "recommend", "quote": "I use the .rec format whenever I want a database maintained in git/github.", "excerpt": "I use the .rec format whenever I want a database maintained in git/github. The format is ideal if you want reasonable data diffs.", "context": "", "use_case": "git-tracked database", "switched_from": "", "story": "GNU recutils: Plain text database"}]}