feat(platform): build collaborative workspace tool

Open
#1,926 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
25/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Quiet
Tech stack
postgres, react

Research direction

Start by evaluating HedgeDoc as the proposed foundation, then compare that approach with the current React SPA and the listed real-time, authentication, storage, and integration requirements. The issue provides no files or tests to run; a useful outcome would be a decided MVP scope and implementation direction after the membership system is stable.

Written by the indexing model from the issue text.

Description

Summary

Build a custom collaboration tool at `collab.us-rse.org` inspired by HackMD (real-time collaborative Markdown) and Notion (structured pages, databases, wikis). This replaces Slack Canvases and gives working groups a persistent space for living documents, meeting notes, project plans, and shared references.

Requirements

Core Features (MVP)
  • Real-time collaborative Markdown editing (multiple cursors, conflict resolution)
  • Document organization: workspaces per working group / affinity group
  • Folder/page hierarchy within each workspace
  • Version history (view and restore previous versions)
  • Permissions: workspace-level (who can view/edit), document-level overrides
  • Rich Markdown rendering (tables, code blocks, math/LaTeX, Mermaid diagrams)
  • Export to PDF/Markdown/HTML
Workspace Structure
  • One workspace per Working Group
  • One workspace per Affinity Group
  • Board workspace (private)
  • Public workspace (community-wide shared docs)
  • Personal workspace per member (private notes)
Authentication
  • WorkOS SSO integration — same identity as us-rse.org and chat.us-rse.org
  • Role mapping: WG chairs get workspace admin, members get editor access
  • Guest/read-only access for public documents
Integration
  • Link sharing (paste a collab.us-rse.org link in Zulip, get a rich preview)
  • Embed documents in the main US-RSE site (e.g., meeting notes on WG pages)
  • n8n integration (trigger workflows when documents are updated)
  • Notification when a document you're subscribed to changes
Future Features (Post-MVP)
  • Notion-style databases (tables with views, filters, sorts)
  • Templates (meeting notes template, project proposal template)
  • Comments/inline discussion on documents
  • Offline editing with sync on reconnect

Context

This is a future build — not blocking the Slack migration. Priority order:

  1. #1924 Zulip (chat) — immediate
  2. #1925 n8n (workflows) — alongside Zulip
  3. This issue (collaboration) — after membership system is stable

The current site is a React SPA. This tool could be a separate application or an integrated section of the main site, depending on complexity. HackMD's open-source edition (CodiMD/HedgeDoc) could serve as a foundation rather than building from scratch.

Implementation Notes

  • HedgeDoc (formerly CodiMD) is the open-source HackMD. It provides real-time collaborative Markdown editing out of the box and is self-hostable. Evaluate whether to use it as-is, fork and customize, or build from scratch.
  • Real-time collaboration requires operational transforms (OT) or CRDTs — libraries like Yjs or Automerge handle this.
  • Consider Tiptap (ProseMirror-based) for a richer editor beyond pure Markdown.
  • Postgres (NeonDB) for document storage, with JSONB for structured content.
  • WebSocket server for real-time sync.
Dominant language
HTML
Stars
33
Forks
104
Avg merge
12h 3m
Merged PRs (30d)
10

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from USRSE/usrse.github.io

All issues in USRSE/usrse.github.io

Similar issues

More Security issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.