Skip to main content

Module group

Module group 

Source
Expand description

Group and membership models for shared memory graphs.

This module provides types for organizing memories into groups that can be shared across team members within an organization.

§Overview

Groups exist within an organization scope and allow multiple users to share memories. Each group has:

  • A unique identifier within the organization
  • Members with roles (admin, write, read)
  • Token-based invite system for adding members

§Example

use subcog::models::group::{Group, GroupRole, GroupMember};

let group = Group::new("research-team", "acme-corp", "alice@example.com");
let member = GroupMember::new(group.id.clone(), "bob@example.com", GroupRole::Write);

Structs§

AddMemberRequest
Request to add a member to a group.
CreateGroupRequest
Request to create a new group.
CreateInviteRequest
Request to create an invite.
Group
A group for sharing memories within an organization.
GroupId
Unique identifier for a group.
GroupInvite
An invitation to join a group.
GroupMember
A member of a group with an assigned role.
GroupMembership
Summary of a user’s membership in a group.

Enums§

GroupRole
Role-based access control for group members.

Functions§

is_valid_email
Email validation helper.
normalize_email
Normalizes an email address to lowercase.