logo json-db
  • Database
  • Docs
  • About

Guides and Docs

Json-db makes it possible to create and manage JSON based databases all stored on the local hard drive (no server required).

As the database definition and content is based on JSON and stored on the users own computer it is easy to get started with a new database or edit an existing database as no server needs to be configured and users created etc. Using the content of the database in other contexts is easy as well as each collection is just a simple JSON-file.

The downside of storing a database directly on a local hard drive is that multiple users cannot edit the database at the same time and changes to the database cannot be reflected on e.g. a website without additional steps to synchronize changes with the server hosting the website. Furthermore care must be taken to make sure the database files are not lost.
The use of JSON as dataformat for storing the data also put some restrictions on how large the database can be and still perform well. If the expected size of a collection is > 250.000 entries a traditional database should be considered instead.

Read the Schema Docs

Open an Existing Database

Navigate to the database page and click "Open". In the dialog navigate to the root directory of the existing json-db database and click the "Select Folder" button in the dialog (the button name may be different depending on OS and language settings).

a json-db database directory is a directory with a schema.json file conforming to the rules described in the schema docs.

Create a new Entry

In the left menu-bar click "Create new" under the collection the new entry should be added to.

Fill out the form and click "Save and Create New". The entry will be saved (if all fields are valid) and a new empty form will open so another entry can be added. If no further entries needs to be created click "Save & Close". To see and edit the newly added entry click "Manage" in the menu bar.

Entry form

Manage Entries

In the left menu bar click "Manage" under the collection you want to manages existing entries for.

  • Search all entries of the collection by typing one or more keywords in the search bar. Wildcard search is supported using * at the end of a keyword.
  • Edit an entry by clicking the edit icon . This will open the edit entry form.
  • Delete an entry by clicking the delete icon .
  • Sort the entries by clicking the table column to sort by. Clicking the column again will switch between ascending and descending order.
  • Details for an entry can be seen by clicking the id of the entry, which will open the details view.
Manage entries

Install as Progressive Web App (PWA)

If you use the json-db editor on a regular basis it can be installed as a Progressive Web App so the editor can be opened as a regular application e.g. from a shortcut on the desktop.

In Google Chrome click the PWA icon in the right side of the address bar (only visible if the app is not already installed).

PWA icon
Google Chrome PWA installation button

Click "Install" and the app will be installed with a shortcut on the desktop.

Demo Databases

To get an idea of the structure of a database schema and its collections a few demo databases is available. Try out a database by doing the following:

  1. Download the database zip-file by clicking one of the download links below.
  2. Unzip the database file.
  3. Follow the instructions in Open an Existing Database.

Movie Demo Database

A database of movies, persons (actors, directors and crew) and countries (origin of the movie).

The database contains around 8.000 movies and 120.000 persons and has both nested objects and relations.

Download Movie Database

Book Demo Database

A database of authors, books, editions and publishers.

The database only have a few entries and is primarily meant to demonstrate how to model 1-M and M-M relations.

Download Book Database

Create a new Database

Creating a new database from scratch only requires some basic knowledge of data modelling and JSON documents. Read the schema docs to get started.

Created by chc.au.dk