diff --git a/README.md b/README.md index b2e7a55..823364e 100644 --- a/README.md +++ b/README.md @@ -19,4 +19,32 @@ it is done with running the SQL command below, and restating the database server ALTER SYSTEM SET wal_level = logical; ``` -## Using the api +## Project description + +The app has these basic concepts: + +### User + +A user of the system (obviously). User authn is not implemented, authz is very simplified. + +### Resource + +This is an abstract object representing a project, that multiple users might work on. +The notion of work on is currently implemented as the comment create action. +A resource might belong to an organization or belong to the default (null) organization. + +### Comment + +A text note, that belongs to a given resource, created by a user. + +### Region + +A geo-located data storage region, currently implemented as a PostgresSQL database server. +When providing a connection url to a region, make sure to not include a database name or any trailing `/`-s in the url. + +### Organization + +A collection of users and an owner of resource. Any user may create organizations. +Organizations may be granted access to any given region. That action creates a new database in the region DB server. migrates it to the latest DB schema and sets up user and resource publish and subscribe mechanisms. + +###