Watch
2
0
Fork
You've already forked looseleaf
0
Minimalist transactional HTTP key/value store
  • Java 99.3%
  • Smalltalk 0.3%
  • Dockerfile 0.3%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-07-31 18:42:58 +01:00
.forgejo Update workflows. 2026-07-31 18:42:58 +01:00
com.io7m.looseleaf.cmdline Add a dedicated self-test command. 2026-07-13 09:10:04 +01:00
com.io7m.looseleaf.database.api Reformat sources, fix OCI and documentation generation. 2026-07-12 21:18:29 +01:00
com.io7m.looseleaf.database.sqlite Reformat sources, fix OCI and documentation generation. 2026-07-12 21:18:29 +01:00
com.io7m.looseleaf.documentation Update brand. 2026-07-13 09:53:48 +01:00
com.io7m.looseleaf.grafana Reformat sources, fix OCI and documentation generation. 2026-07-12 21:18:29 +01:00
com.io7m.looseleaf.oci Add a dedicated self-test command. 2026-07-13 09:10:04 +01:00
com.io7m.looseleaf.protocol.v1 Reformat sources, fix OCI and documentation generation. 2026-07-12 21:18:29 +01:00
com.io7m.looseleaf.security Reformat sources, fix OCI and documentation generation. 2026-07-12 21:18:29 +01:00
com.io7m.looseleaf.server Reformat sources, fix OCI and documentation generation. 2026-07-12 21:18:29 +01:00
com.io7m.looseleaf.server.api Reformat sources, fix OCI and documentation generation. 2026-07-12 21:18:29 +01:00
com.io7m.looseleaf.tests Reformat sources, fix OCI and documentation generation. 2026-07-12 21:18:29 +01:00
src/site/resources Update site metadata. 2025-08-09 15:14:02 +00:00
.gitignore Update .gitignore. 2024-05-07 16:01:46 +00:00
.gitmodules Move to new organization. 2024-05-01 20:11:51 +00:00
doc7m-books.json Add doc7m-books.json. 2026-07-13 09:20:29 +01:00
pom.xml Migrate project. 2026-06-27 10:12:20 +01:00
README-CHANGES.xml Mark release 4.0.0 2025-11-30 17:39:19 +00:00
README-LICENSE.txt Update LICENSE 2023-08-13 21:07:29 +00:00
README.in Migrate project. 2026-06-27 10:12:20 +01:00
README.md Migrate project. 2026-06-27 10:12:20 +01:00

looseleaf

Maven Central Maven Central (snapshot) Java Version

com.io7m.looseleaf

looseleaf

The looseleaf package implements an HTTP-accessible key/value database with ACID semantics and fine-grained role-based access control.

Features

  • ACID semantics.
  • Atomic reads and updates for arbitrary sets of keys. An unlimited number of keys can be read, updated, and/or deleted in a single operation that is atomic with respect to all other database operations.
  • Fine-grained role-based access control.
  • A trivial HTTP interface for easy access from shell scripts.
  • A strictly defined JSON protocol with a full schema.
  • Convenient endpoints for use with command-line tools such as curl.
  • A small, easily auditable codebase with a heavy use of modularity for correctness.
  • An extensive automated test suite with high coverage.
  • A small footprint; the server is designed to run in tiny 16-32mb JVM heap configurations.
  • Platform independence. No platform-dependent code is included in any form, and installations can largely be carried between platforms without changes. The database file format is also platform-independent.
  • Security-conscious engineering. All requests require authentication, extensive validation is performed on all requests, and careful use is made of the Java type system to enforce invariants throughout the codebase.
  • Fully instrumented with OpenTelemetry for reliable service monitoring.
  • Configurable fault injection for testing monitoring.
  • OSGi-ready
  • JPMS-ready
  • ISC license.

Usage

See the documentation.