[go: nahoru, domu]

Skip to content
/ yamldb Public

A document database which stores documents as YAML files. Update, add, remove and view database items by editing files.

License

Notifications You must be signed in to change notification settings

vpj/yamldb

Repository files navigation

#YAML Database

YAML database is a document database which stores documents as YAML files. The documents in the database can be maintained by simply editing the yaml files.

This database was designed to be used for systems like CMS systems, where an easy way to edit data is necessary and the number of data objects is not very high. It can be also used to store settings and configurations.

Storing the database as separate files lets you use version control systems like git on the database, which is again ideal for storing settings, configurations, blog posts and CMS content.

###Advantages

  • Can easily change database entries
  • Can use version control on the database
  • Ideal for settings and configurations (user configs etc)

###Disadvantages

  • No SQL or similar functionality (like searching the database)
  • Not suitable for storing transactional data

##Installation

npm install yamldb

##Documentation

##Example.coffee

yamldb = require 'yamldb'

Define a object model

class Fruit extends yamldb.Model
 model: 'Fruit'

 @defaults
  handle: ''
  name: ''
  price: 0.00
  description: ''
  images: []

An object of all object models

models =
 Fruit: Fruit

Initialize database, where testdata is the path of the database.

db = new yamldb.Database 'testdata', models

Load all Fruit objects from files within directory testdata/Fruit.

db.loadFiles 'Fruit', (err, objs) ->
 console.log err, objs

About

A document database which stores documents as YAML files. Update, add, remove and view database items by editing files.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published