Skip to content

foundpatternscellar/contentdb-old

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 

Repository files navigation

ContentDB

contentdb is a document store database design, implemented as a library for Torchbear apps. See also NoSQL databases, such as CouchDB and MongoDB.

This project follows a general trend away from table-oriented databases, usually toward document-oriented or otherwise graph-oriented; meanwhile outline-oriented is a very good one too, see WorkFlowy and OmniOutliner - given usage of models.

What makes ContentDB significantly different from other databases is that it uses a file to store each "record", called a document, in a specified format. This is similar to RDF-style XML databases.

With this approach, you can easily manage your data storage, retreival, and other metadata storage and retrieval as well. You can easily do version control for history tracking and easy deployment. Relationships are easy to represent using reference fields. See and Pelican and Grav for other similar systems, more so Pelican because of its pelican reference plugin.

To massively improve performance and scalability, Tantivy integration can provide immediate indexing and querying. This is the same as materialized views and mongo collections.

The current version is in Lua. See ContentDB-Lua.

Format

ContentDB combines one structured and one unstructured data format. Headers use SCL, and bodies use Markdown or Lua.

Header field values provide a mechanism to represent attributes of world entities in virtual document texts. Relationship fields work by using the target's model for its field. You can see this implemented in Python in the pelican plugin above.

Default ID is UUIDv4.

Short names are a missing feature. https://github.com/foundpatterns/contentdb/issues/4

Model documents started by following some json document schema or something, forgot which schema

Stores are folders with documents from a single source.

About

A document-oriented, file-based database (see also https://github.com/foundpatterns/contentdb-lua)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published