Ghee/DESIGN.md

12 lines
531 B
Markdown
Raw Normal View History

2023-08-11 08:25:30 +02:00
# Ghee Design Principles
1. Folders are tables
2. Files are records
3. Relative paths are primary keys
4. Extended attributes are non-primary-key columns
5. Enforce schema only when present
2023-08-11 22:43:06 +02:00
6. The file contents and xattrs without the `user.ghee` prefix are user-controlled; only directory structure, filenames,
and extended attributes in `user.ghee` are used by Ghee
2023-08-11 08:41:55 +02:00
7. Use of filesystem features should be preferred over implementing features directly in Ghee,
e.g. locking, Btrfs subvolumes, snapshots, incremental backup