Skip to content

Feature/338 realtime collaboration basic#344

Merged
felix-schultz merged 10 commits intodevfrom
feature/338-realtime-collaboration-basic
Oct 24, 2025
Merged

Feature/338 realtime collaboration basic#344
felix-schultz merged 10 commits intodevfrom
feature/338-realtime-collaboration-basic

Conversation

@felix-schultz
Copy link
Copy Markdown
Member

This pull request introduces several enhancements and fixes across the desktop app, focusing on improving realtime access support, error handling, and permission schemas. The most significant changes are the addition of new methods for realtime access in board state management, improved error reporting, and expanded permission definitions for Tauri commands across all platforms.

Realtime access and board state improvements:

  • Added new methods getRealtimeAccess and getRealtimeJwks to the BoardState class for retrieving realtime access credentials and JWKS, with proper offline and authentication checks.
  • Imported types IJwks and IRealtimeAccess for type safety in realtime access methods.

Profiles and onboarding flow:

  • Changed the return type of the get_profiles Tauri command to Result<HashMap<String, UserProfile>, TauriFunctionError> for better error propagation, and updated the frontend to handle the new object-based structure and error states, improving onboarding and error handling. [1] [2]

API and error handling:

  • Enhanced the fetcher utility to log the response body when an error occurs, aiding in debugging failed API requests.

Permission schema updates (Tauri platform schemas):

  • Expanded the default and explicit permissions in the Tauri schemas (desktop-schema.json, macOS-schema.json, iOS-schema.json, mobile-schema.json) to include allow-register-listener and allow-remove-listener, as well as their corresponding deny permissions, ensuring the app can explicitly control access to these commands across all platforms. [1] [2] [3] [4] [5] [6]

Miscellaneous:

  • Passed a new bits property to app creation requests in AppState for improved metadata handling.

- Updated schema names to "public" for multiple entities including BitTreeCache, BoardSync, Comment, Course, CourseConnection, ExecutionUsageTracking, Feedback, Invitation, InviteLink, JoinQueue, LandingPage, LLMUsageTracking, Membership, Meta, Node, PAT, Profile, PublicationLog, PublicationRequest, Role, Swimlane, SwimlaneItem, TechnicalUser, Template, TemplateProfile, Transaction, and User.
- Reordered fields in several entities for consistency and clarity.
- Added missing fields such as `app_id` and `created_at` in various entities.
- Removed redundant fields and adjusted column types where necessary.
- Introduced new entities and relations where applicable.
…rror handling

fix(webrtc): correct indentation in createRealtimeSession for clarity
fix(schemas): enhance permission descriptions in iOS and mobile schemas
fix(page): improve profile loading logic and error handling in Home component
- Introduced peer presence tracking with cursor and selection states.
- Added FlowLayerIndicators to display peer presence in different layers.
- Implemented remote selection handling in FlowNode to show selected participants.
- Enhanced FlowCursors to visually represent remote cursors and their positions.
- Improved connection status handling in WebRTC session management.
- Added reconnection logic and status updates for better user experience.
- Updated the `handleCreateEvent` function to enhance readability and error handling.
- Consolidated event creation logic and added checks for PAT requirements.
- Refactored event deletion and editing functions for consistency and clarity.
- Improved formatting and structure in various components, including `EventConfiguration` and `EventsTable`.
- Streamlined imports and type definitions in `webrtc.ts` and `types.ts`.
- Removed unnecessary comments and improved code organization in several files.
- Ensured consistent use of async/await patterns and error handling across event-related functions.
@felix-schultz felix-schultz linked an issue Oct 24, 2025 that may be closed by this pull request
4 tasks
@felix-schultz felix-schultz merged commit 92598c9 into dev Oct 24, 2025
3 of 10 checks passed
@felix-schultz felix-schultz deleted the feature/338-realtime-collaboration-basic branch October 24, 2025 21:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Realtime Collaboration

1 participant