KirbyBase
discontinuedby Jamey Cribbs (NetPro Technologies) · since 2003 · also known as Kirby Base
Tiny pure-Ruby and pure-Python DBMS that stores tables as plain-text files.
discontinued. No releases since the 2.6.1 Ruby gem (2012); original site offline. Use SQLite or a small JSON store instead.
Overview
KirbyBase is Jamey Cribbs's small database management system, written once in pure Python and again in pure Ruby, that keeps each table as a human-readable delimited text file. You define typed fields, then insert, update and select records; the Ruby version uses code blocks as query predicates, supports lookups and links between tables, computed fields and indexes, and can run embedded in a script or as a simple client-server process. It was popular in the mid-2000s Ruby scene for scripts and small apps that wanted structure without SQLite. The last Ruby gem (2.6.1) dates from 2012 and the Python package stopped at 1.9; the original netpromi.com site is gone.
Strengths & trade-offs
Strengths
- +Data files are plain text you can read and edit by hand
- +Pure Ruby/Python with no native dependencies
- +Ruby blocks as query predicates feel natural in scripts
- +Embedded or simple client-server modes
Trade-offs
- −Unmaintained since 2012
- −No transactions or crash safety; whole-file rewrites
- −Performance falls off quickly as tables grow
Great for
- +Legacy Ruby or Python scripts already using it
- +Teaching what a minimal DBMS needs
Think twice for
- −Concurrent or multi-user applications
- −Any dataset beyond a few megabytes
Capabilities
Native or official first-party support · 3 of 25 tracked
Scale & consistency
- Comfortable data size
- Small · ≤ 100 GB
- Horizontal scaling
- None
- Multi-region
- No
- Transactions
- None
- Consistency
- Strong
- Schema
- Strict
- Architecture
- Embedded, Client server
- Query languages
- Ruby blocks, Python API
Plain-text files; fine for thousands of records, slow beyond that.
Deployment
Ecosystem
Alternatives to KirbyBase
The in-process SQL engine that ships in every phone, browser and OS: one file, zero servers.
kirbybase vs sqlite →Pure-Python document store that keeps every table in one human-readable JSON file.
kirbybase vs tinydb →Tiny type-safe local JSON database for Node, Electron and the browser using plain JavaScript.
kirbybase vs lowdb →PHP library that treats JSON files as database tables, with an ORM-style query builder and relations.
kirbybase vs lazer →Dependency-free PHP library that stores schemaless documents as plain JSON files on disk.
kirbybase vs sleekdb →Desktop database and forms builder bundled with Microsoft 365; still everywhere in back offices.
kirbybase vs microsoft-access →KirbyBase FAQ
What is KirbyBase?
KirbyBase is a relational database by Jamey Cribbs (NetPro Technologies), first released in 2003. KirbyBase is Jamey Cribbs's small database management system, written once in pure Python and again in pure Ruby, that keeps each table as a human-readable delimited text file. You define typed fields, then insert, update and select records; the Ruby version uses code blocks as query predicates, supports lookups and links between tables, computed fields and indexes, and can run embedded in a script or as a simple client-server process. It was popular in the mid-2000s Ruby scene for scripts and small apps that wanted structure without SQLite. The last Ruby gem (2.6.1) dates from 2012 and the Python package stopped at 1.9; the original netpromi.com site is gone.
Is KirbyBase open source?
Yes. KirbyBase is open source. License: Ruby License (Ruby); PSF License (Python).
Does KirbyBase support ACID transactions?
No. KirbyBase does not provide ACID transactions; its consistency model is strong.
Does KirbyBase scale horizontally?
KirbyBase does not scale horizontally; it runs on a single node, so you scale it up rather than out. It is comfortable at small scale (≤ 100 GB).
How can I run KirbyBase?
You can self-host it and embed it in your application.
What is KirbyBase best for?
KirbyBase is a strong fit for legacy Ruby or Python scripts already using it and teaching what a minimal DBMS needs. Think twice for concurrent or multi-user applications.
What are the best alternatives to KirbyBase?
Common alternatives to KirbyBase include SQLite, TinyDB, lowdb, Lazer Database and SleekDB. The right choice depends on your workload, scale and hosting; WhichDB's smart match ranks them against your requirements.
Is KirbyBase still maintained?
KirbyBase is discontinued. No releases since the 2.6.1 Ruby gem (2012); original site offline. Use SQLite or a small JSON store instead.
How popular is KirbyBase?
KirbyBase has little measurable public adoption today, so it ranks near the bottom of the WhichDB Score.