a small relational database with user-editable schema for manual data entry
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Ondřej Hruška 17328393aa
make things more accessible
4 years ago
yopa dry some stuff. also lot of yelling at the compiler 4 years ago
yopa-web make things more accessible 4 years ago
.gitignore clean, change default file extension for json 4 years ago
Cargo.lock dry some stuff. also lot of yelling at the compiler 4 years ago
Cargo.toml wip new UI with spectre 4 years ago
README.md add a readme 4 years ago

README.md

YOPA

Yopa is a relational database for cataloging things.

The data model is user-editable through a web interface, together with the data.

Data model

There are three kinds of entities in the database: objects, relations, and properties.

Here is an example database schema that can be easily set up in Yopa:

      ,----quantity-----> Ingredient
      |                   - amount in the pantry
      |                   - e-shop link
      |
Recipe ------page X-----> Book
- cook time               - author(s)
- difficulty              - year
- photo URI(s)

Relations link two objects. Properties are attached either to an object, or to a relation - this makes sense for relations that need additional information, such as a page number when referencing a book.

Yopa implements four base data types: String, Integer, Decimal and Boolean. Properties may further be optional and/or multiple.

Web interface

Yopa is the database engine. There can be any number of user interfaces to it. Presently, the yopa-web module provides a web interface with a built-in web server. Just run the binary and it will open your yopa database for editing. The file is created on the first change if it doesn't exist.