Locales & regions
What it is
Place-scoped commons. Locales/chapters and regions/bioregions (basins) are place-typed agents that posts, events, and offerings can be scoped to, giving each place its own feed and directory. Rings and families are related place/affinity containers.
Where it lives
/locales,/locales/[id]— locale commons ·src/app/(main)/locales/**/basins— bioregions ·src/app/(main)/basins/**/rings,/families— related containers ·src/app/(main)/rings/**,src/app/families/**
Every interaction
- Browse places — list locales, basins, rings, families.
- Open a place — its scoped feed of posts/events/offerings.
- Scope content to a place — when composing, attach a locale/region so it
appears in that place's feed (resolve names → ids via
rivr.places.list). - Participate — join/participate per the place's membership model. TODO(verify): confirm live locale/region join + role affordances.
Permissions / gating
- Public place pages (
/locales,/basins,/rings,/familiesare public prefixes). - Participation and place-admin actions require a session and the relevant role.
- Sovereign locale/region instances federate to global for aggregation.
Cross-links
- API/MCP:
rivr.places.list·/api/localesREST ·/api/map-neighborhoods·/api/map-microsheds - Wiki: Explore & search · Groups & subgroups · Feeds & posts