A modern, real-time team collaboration platform built with Next.js, featuring workspace management, channels, messaging, and AI-powered assistance.
Syncom is a comprehensive team communication and collaboration platform that enables teams to organize their work into workspaces and channels. With real-time messaging, threaded conversations, reactions, and AI assistance, Syncom provides a seamless communication experience for modern teams.
- Next.js 15.5.7 - React framework with App Router
- React 19.2.0 - UI library
- TypeScript 5 - Type-safe development
- Prisma 7.1.0 - ORM for database management
- PostgreSQL - Primary database (via Neon adapter)
- oRPC - Type-safe RPC framework for API routes
- Kinde Auth - Authentication and user management
- Arcjet - Bot detection and security middleware
- PartyKit - Real-time WebSocket server (Cloudflare Durable Objects)
- PartySocket - WebSocket client library
- Tailwind CSS 4 - Utility-first CSS framework
- Radix UI - Accessible component primitives
- Framer Motion - Animation library
- Lucide React - Icon library
- Shadcn/ui - Component library
- Tiptap - Headless rich text editor
- Lowlight - Syntax highlighting for code blocks
- Vercel AI SDK - AI integration framework
- OpenRouter - AI model provider
- UploadThing - File upload service
- TanStack Query - Server state management
- React Hook Form - Form state management
- Zod - Schema validation
- ESLint - Code linting
- Wrangler - Cloudflare Workers CLI
- Create and manage multiple workspaces
- Organization-based workspace isolation
- Workspace member management
- Role-based access control
- Create unlimited channels within workspaces
- Public and private channel support
- Channel-specific messaging
- Real-time channel updates
- Rich text message composition with Tiptap editor
- Image attachments via UploadThing
- Message editing and deletion
- Code block support with syntax highlighting
- Text formatting (bold, italic, lists, etc.)
- Reply to messages in dedicated threads
- Thread sidebar for focused discussions
- Real-time thread updates
- Thread reply notifications
- Add emoji reactions to messages
- Multiple reactions per message
- Real-time reaction updates
- User-specific reaction tracking
- See who's currently online in your workspace
- Live user status updates
- Active user indicators
- WebSocket-based presence system
- AI-powered message suggestions
- Context-aware responses
- Integration with OpenRouter AI models
- Vercel AI SDK integration
- Secure authentication with Kinde
- Bot detection and prevention with Arcjet
- Protected API routes
- Middleware-based security checks
- Dark mode support with next-themes
- Responsive design for all devices
- Smooth animations and transitions
- Accessible UI components
- Resizable panels for customizable layouts
- Type-safe database queries with Prisma
- Optimistic UI updates
- Efficient data caching with TanStack Query
- Real-time data synchronization
- Node.js 20 or higher
- pnpm (recommended) or npm/yarn
- PostgreSQL database
- Cloudflare account (for real-time features)
- Clone the repository
git clone https://github.com/adityackr/syncom.git
cd syncom- Install dependencies
pnpm install- Set up environment variables
cp .env.example .envFill in the required environment variables in .env
- Set up the database
pnpm dlx prisma generate
pnpm dlx prisma db push- Run the development server
pnpm dev- (Optional) Run the real-time server locally
pnpm dlx wrangler devOpen http://localhost:3000 to see the application.
syncom/
βββ app/ # Next.js app directory
β βββ (dashboard)/ # Dashboard routes
β βββ (marketing)/ # Marketing pages
β βββ api/ # API routes
β βββ middlewares/ # Custom middlewares
β βββ router/ # oRPC routers
β βββ schemas/ # Zod schemas
βββ components/ # Reusable UI components
βββ hooks/ # Custom React hooks
βββ lib/ # Utility functions and configs
βββ prisma/ # Database schema
βββ providers/ # React context providers
βββ realtime/ # PartyKit real-time server
βββ public/ # Static assets
Deploy the Next.js application to Vercel:
pnpm buildDeploy the PartyKit server to Cloudflare Workers:
pnpm dlx wrangler deployThis project is private and proprietary.
This is a personal project. Contributions are not currently accepted.
For questions or feedback, please reach out to the project maintainer.

