verdverm.com
05/31/2025, 9:56 PMcue
schema: {
user: {}
// would be great to use CUE's disjunction operator "|", which seems like a union, but in a different context?
// arrows and hashtags would break things, there are other ways to index in CUE though
_gmember: ["user", "group#owner", "group->member"]
group: {
relations: {
owner: _gmember
direct: _gmember
}
permissions: {
member = "owner + direct" // this is probably a disjunction as well?
write = "owner"
read = "member + write"
}
}
post: {
relations: {
owner: _gmember
editor: _gmember
reviewer: _gmember
commenter: _gmember
reader: _gmember
}
permissions: {
admin = "owner"
write = "owner + editor"
read_draft = "write + reviewer"
feedback = "read_draft"
comment = "commenter + read_draft"
read = "reader + comment"
}
}
}