Skip to content

rahulvikram/consensus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Consensus

Real-time collaborative decision-making app. image image image

Stack

  • Framework: Next.js 15 (App Router)
  • Language: TypeScript (strict)
  • Database: PostgreSQL + Drizzle ORM
  • Auth: Clerk
  • Real-time: Socket.IO (standalone server)
  • Styling: Tailwind CSS
  • Validation: Zod
  • Monorepo: Turborepo

Structure

pulse/
  apps/
    web/       Next.js frontend
    ws/        Socket.IO server
  packages/
    db/        Drizzle schema, queries, db client
    types/     Shared TypeScript types + Socket.IO event contracts

Setup

1. Install dependencies

npm install

2. Configure environment

cp apps/web/.env.local.example apps/web/.env.local
cp apps/ws/.env.example apps/ws/.env

Fill in your PostgreSQL connection string and Clerk API keys.

3. Push database schema

npm run db:push

4. Start development

npm run dev

This starts both the Next.js app (port 3000) and the WebSocket server (port 3001).

Scripts

Command Description
npm run dev Start all apps in dev mode
npm run build Build all apps
npm run db:generate Generate Drizzle migrations
npm run db:migrate Apply migrations
npm run db:push Push schema directly (dev)
npm run db:studio Open Drizzle Studio

About

Real-time collaborative decision-making app, using websockets.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors