Skip to content

KunalNasa/slates

Repository files navigation

Slates - Collaborative Canvas Board

Slates is a collaborative canvas board where multiple users can draw together in real-time.

Tech Stack

  • PostgreSQL
  • WebSockets
  • Turborepo
  • Canvas API
  • BullMQ
  • Redis
  • Next.js
  • Express
  • Prisma

How it works

  • Real-time shape rendering is handled using WebSockets.
  • Shapes are saved asynchronously to the database using BullMQ queues.
  • The project uses a monorepo setup powered by Turborepo to manage multiple apps and packages.

Repository Structure

apps/
  ├── http-backed       # Express backend for user, profile, and room management
  ├── ws-server         # WebSocket server for real-time drawing and room handling
  └── main-site         # Frontend built using Next.js

packages/
  ├── db                # Prisma setup and all DB models
  ├── backend-common    # Shared types and middlewares for backend services
  ├── common            # Common files shared across all apps
  └── design-system     # Tailwind CSS setup used across the project

Getting Started

Install dependencies

pnpm install

Development

pnpm dev

Build

pnpm build

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors