Hey DEV Community! 👋
I'm Craig, founder at Marowa Labs. Over the past few months, I've been building WorkContext — an open-source productivity workspace designed to eliminate tool sprawl by bringing writing, tasks, real-time collaboration, and grounded AI assistance under one roof.
💡 Why WorkContext?
Most workspace AI tools trap you in proprietary ecosystems or charge heavy subscription markups. WorkContext takes a different approach:
- Bring Your Own Key (BYOK): Connect your Google AI Studio, OpenAI, Anthropic, or OpenRouter keys directly. You pay AI providers at cost with zero vendor lock-in.
- Context-Aware AI: The assistant isn't just a generic chatbot; it reads your active documents, tasks, and history to give grounded answers.
- Real-Time Collaboration: Live multi-user editing with presence cursors and comments, powered by Yjs & CRDTs (Hocuspocus).
- Smart Task Extraction: Highlight any text inside your docs to turn it into actionable tasks and deadlines instantly.
🛠️ Tech Stack
- Frontend: Next.js 16 (App Router), React, TypeScript, Tailwind CSS, TipTap Editor, Radix UI
- Backend: Node.js, Express 5, TypeScript, Prisma 7
- Database & Auth: PostgreSQL 17 + pgvector, Supabase Auth
- Real-time Engine: Hocuspocus + Yjs (CRDT)
🤝 Looking for Contributors!
We're making a strong push to welcome open-source contributors! Whether you're looking to practice TypeScript, test Next.js 16, or dive into real-time CRDT architectures, there's a place for you.
We already have beginner-friendly tasks set up:
- 🏷️ Look for the
good first issuetag on our GitHub Issues tab. - Tasks include adding unit tests, UI empty states, and expanding
.envdocumentation.
🔗 Links
- 📦 GitHub Repo: marowa-labs/workcontext
- 🚀 Live Demo: workcontext.vercel.app
I’d love to hear your feedback on the architecture, UX, or feature ideas. Star the repository if you find it interesting! ⭐
Top comments (2)
The interesting part of an AI workspace is not just collecting context, but deciding what context deserves to persist. I would look for workflows around source links, stale context cleanup, and handoff between sessions. That is where these tools become operational.
Thanks @alexshev Alex! Spot on. The "context persistence vs. noise" problem is huge. We handle stale context and session handoffs by grounding retrieval directly via pgvector with clear source citations back to Slack/Jira/GitHub. Workflows around context lifecycle and automated cleanup are definitely high on our roadmap!