Team chat, reimagined. Built with Next.js 15, Convex, and Clerk.
- Real-time messaging with channels and direct messages
- File attachments and image uploads
- Reactions, replies, and message pinning
- Workspace management with role-based access
- Typing indicators and read receipts
- Node.js 18+ or Bun
- A Clerk account for authentication
- A Convex account for the backend
-
Clone the repo:
git clone https://github.com/your-username/portal.git cd portal -
Install dependencies:
bun install
-
Copy the environment file and configure it:
cp .env.example .env.local
Optional environment variables:
NEXT_PUBLIC_DATABUDDY_CLIENT_ID- Your Databuddy client ID (for analytics)
-
Start Convex (in a separate terminal):
bun run dev:convex
-
Start the development server:
bun run dev
- Framework: Next.js 15 (App Router)
- Backend: Convex
- Auth: Clerk
- Styling: Tailwind CSS
- Analytics: Databuddy (optional, privacy-first)
MIT