Create sub-groups within a group
Nobody has claimed this yet.
- Dominant language
- HTML
- Stars
- 8
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Description
"As a group admin, I want to create sub-groups within my group, so members can organize discussions by topic."
Besides linking related groups (see https://github.com/swicg/groups/issues/31), we implemented a tree structure where:
- Groups can contain child groups (channels/topics)
- Channels inherit properties from parent groups
- Members can browse by channel or see all group content
Existing approaches:
- Schema.org:
hasPart/isPartOffor parent-child relationships - Nodebb: Nested categories
Suggested representation for a parent group:
{
"type": "Group",
"id": "https://example.org/groups/programming",
"name": "Programming",
"attributedTo": ["https://example.org/actors/alice"],
"hasPart": [
{"type": "Group", "id": "https://example.org/groups/programming/rust", "name": "Rust"},
{"type": "Group", "id": "https://example.org/groups/programming/python", "name": "Python"},
{"type": "Group", "id": "https://example.org/groups/programming/elixir", "name": "Elixir"}
]
Suggested representation for a child group:
{
"type": "Group",
"id": "https://example.org/groups/programming/rust",
"name": "Rust",
"isPartOf": "https://example.org/groups/programming",
"attributedTo": ["https://example.org/groups/programming/attributedTo"],
"interactionPolicy": {
"canJoin": { "automaticApproval": ["https://example.org/groups/programming/followers"] },
"canModerate": { "automaticApproval": ["https://example.org/groups/programming/attributedTo"] }
Key patterns:
isPartOflinks to parent group (we could also usecontextbut this makes more sense if also usinghasPartfor child groups)- Child can reference parent's collections in
interactionPolicyfor permission inheritance - Child can have its own
attributedToor reference parent's
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with issue #32 and the linked groups issue #31, then compare the proposed parent and child Group representations with the existing Groups Task Force conventions. Review the hasPart/isPartOf relationships, inherited properties, and interactionPolicy examples; done requires an agreed representation for nested groups and permission inheritance.
Written by the indexing model from the issue text.
Assessment
- Domain
- backend-api-design
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100