Skip to content

Update dependencies and implement workspace member invitation features#183

Merged
opeolluwa merged 13 commits into
masterfrom
feat/172-workspace-invitations
Jun 22, 2026
Merged

Update dependencies and implement workspace member invitation features#183
opeolluwa merged 13 commits into
masterfrom
feat/172-workspace-invitations

Conversation

@Boluwatife-AJB

Copy link
Copy Markdown
Collaborator

This pull request introduces a new invitation system for workspaces, allowing users to invite others via email. The changes span database schema, backend entities, API endpoints, and supporting services and repositories. The main focus is on creating, storing, and managing workspace invitations, including schema migration, API handling, and business logic.

Invitation feature implementation:

  • Added a new database migration (m20260614_212029_create_invitation_table) to create the invitation table with fields for workspace ID, email, name, token, status, and timestamps. [1] [2] [3]
  • Generated the invitation SeaORM entity (server/src/entities/invitation.rs) and updated entity module exports to include it. [1] [2] [3]
  • Implemented the InvitationRepository with methods to create invitations and check for existing ones by email and workspace. [1] [2]

API and service layer:

  • Added request/response structs for workspace invitations and implemented the InvitationService to handle invitation logic, including duplicate checks and token generation. [1] [2] [3]
  • Created an Axum handler (invite_workspace_member) and route (/workspaces/{workspace_id}/invitations) for inviting workspace members, and integrated these into the main router and state. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]

Supporting and dependency changes:

  • Updated code generation scripts and dependencies to include the new invitation table and ensure proper random token generation. [1] [2]

These changes collectively enable a robust invitation workflow for workspace collaboration.

This closes #172

@Boluwatife-AJB
Boluwatife-AJB requested a review from opeolluwa June 16, 2026 15:30
@Boluwatife-AJB Boluwatife-AJB added enhancement New feature or request rust labels Jun 16, 2026
Comment thread server/migration/src/m20260614_212029_create_invitation_table.rs Outdated
Comment thread server/migration/src/m20260614_212029_create_invitation_table.rs Outdated
Comment thread server/src/adapters/invitation.rs Outdated
Comment thread server/src/entities/invitation.rs Outdated
Comment thread server/src/repositories/invitation.rs Outdated
Comment thread server/src/routes/invitation.rs Outdated
Comment thread server/src/services/invitation_service.rs Outdated
@Boluwatife-AJB
Boluwatife-AJB marked this pull request as ready for review June 17, 2026 13:14
enum Invitation {
Table,
Identifier,
WorkspaceId,

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well done! @Boluwatife-AJB, this is still WorkspaceId,

@opeolluwa
opeolluwa merged commit cc7d5a9 into master Jun 22, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request rust

Projects

None yet

Development

Successfully merging this pull request may close these issues.

On the server, create a RESTful API that allow users to invite other to their workspace.

2 participants