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.
yopa/README.md

39 lines
1.2 KiB

3 years ago
# 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.