{"id":31642365,"url":"https://github.com/devadarshh/collabydraw","last_synced_at":"2026-04-10T11:32:15.246Z","repository":{"id":313782422,"uuid":"1052481965","full_name":"devadarshh/collabydraw","owner":"devadarshh","description":"A real-time collaborative whiteboard for sketching diagrams and wireframes with a hand-drawn feel, perfect for teamwork and remote brainstorming.","archived":false,"fork":false,"pushed_at":"2025-09-24T07:21:05.000Z","size":4884,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-10-07T04:00:58.549Z","etag":null,"topics":["canvas","collabydraw","colloboration","drawing","excalidraw","express","jwt","monorepo","nextjs","postgresql","prisma-orm","productivity","shadcn-ui","tailwindcss","turborepo","websocket-server","whiteboard","zustand"],"latest_commit_sha":null,"homepage":"https://collabydraw-web.vercel.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/devadarshh.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-08T05:49:54.000Z","updated_at":"2025-09-24T16:42:22.000Z","dependencies_parsed_at":null,"dependency_job_id":"52779419-30a4-4290-ac0c-2aa0944d2cd3","html_url":"https://github.com/devadarshh/collabydraw","commit_stats":null,"previous_names":["devadarshh/collabydraw"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/devadarshh/collabydraw","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devadarshh%2Fcollabydraw","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devadarshh%2Fcollabydraw/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devadarshh%2Fcollabydraw/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devadarshh%2Fcollabydraw/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/devadarshh","download_url":"https://codeload.github.com/devadarshh/collabydraw/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devadarshh%2Fcollabydraw/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31641114,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-10T07:40:12.752Z","status":"ssl_error","status_checked_at":"2026-04-10T07:40:11.664Z","response_time":98,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["canvas","collabydraw","colloboration","drawing","excalidraw","express","jwt","monorepo","nextjs","postgresql","prisma-orm","productivity","shadcn-ui","tailwindcss","turborepo","websocket-server","whiteboard","zustand"],"created_at":"2025-10-07T03:58:42.067Z","updated_at":"2026-04-10T11:32:15.240Z","avatar_url":"https://github.com/devadarshh.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ✏️ Collabydraw – Real-Time Collaborative Whiteboard\n\nCollabydraw is a modern **real-time collaborative whiteboard** designed for **teamwork, brainstorming, and diagram sketching**. With a **hand-drawn feel** powered by Fabric.js, it’s perfect for remote teams to visualize ideas together.\n\n**🌐 Live Demo:** [Access Collabydraw](https://collabydraw-web.vercel.app/)  \n\n## ✅ Core Features\n\n- 🎨 **Whiteboard Drawing Tools** – Freehand sketching, shapes, and annotations with Fabric.js.\n- 🤝 **Real-Time Collaboration** – Multiple users drawing together via WebSockets.\n- 📡 **Live Sync** – Instant updates for all participants in a shared room.\n- 🛡 **Secure Rooms** – JWT authentication for protected collaboration spaces.\n- 🔄 **Turborepo Monorepo Setup** – Unified frontend \u0026 backend workflow.\n- 🖼 **Wireframing \u0026 Diagrams** – Perfect for brainstorming sessions and design planning.\n- ⚡ **Fast \u0026 Lightweight** – Optimized with Zustand for state management.\n- 💾 **Local Storage Support** – Auto-save whiteboard data in browser storage.\n\n---\n\n## 🛠 Tech Stack\n\n### **Client (Frontend)**\n\n- ⚛️ **Next.js** – React-based framework for server-side rendering and dynamic client-side interactivity\n- 🖌 **Fabric.js** – Canvas rendering \u0026 drawing utilities\n- 🎨 **TailwindCSS, Lucide Icons, Shadcn UI, Animate.css**\n- 📝 **React Hook Form \u0026 Yup** – Form handling and validation\n- 🔄 **Zustand** – Efficient state management\n- 🌐 **Axios** – API requests and data fetching\n- 🔔 **Sonner \u0026 Tailwind Merge** – Notifications and utility helpers\n\n### **Server (Backend)**\n\n- ⚡ **Express.js** – Lightweight and flexible Node.js backend framework\n- 🌐 **ws (WebSockets)** – Real-time communication layer\n- 🗄 **PostgreSQL + Prisma ORM** – Relational database with schema management\n- 🛡 **Zod, Body-Parser, CORS** – Request validation, parsing, and security\n- 🌱 **Dotenv** – Environment variable management\n\n### **📦 Monorepo**\n\n- Frontend (`web`) and Backend (`api`) are managed in a single monorepo with **shared configurations, consistent types, streamlined development workflow, Express-powered API, and WebSocket support for real-time communication**\n\n## Environment Variables\n\nTo run this project, you will need to set the following environment variables in your `.env` file:\n\n- `DATABASE_URL`\n- `DIRECT_URL`\n- `PORT`\n- `JWT_SECRET`\n- `NEXT_PUBLIC_API_URL`\n- `NEXT_PUBLIC_WS_URL`\n\n## 🚀 Installation \u0026 Running Locally\n\nFollow these steps to set up and run **Collabydraw**:\n\n```bash\n# Clone the repository\ngit clone https://github.com/devadarshh/collabydraw.git\n\ncd collabydraw\n\n# Install dependencies\npnpm install\n\n# Run both frontend \u0026 backend with Turborepo\npnpm dev\n\n```\n\n--\n\n## 📸 Screenshots\n\n### Landing Page\n\n![Landing Page](apps/web/assets/screenshots/landingPage.png)\n\n### Sign In Page\n\n![Sign In Page](apps/web/assets/screenshots/signinpage.png)\n\n### Canvas\n\n![Drawing Page](apps/web/assets/screenshots/main.png)\n\n### Shapes Page\n\n![Shapes Page](apps/web/assets/screenshots/shapes.png)\n\n### Settings Page\n\n![Settings Page](apps/web/assets/screenshots/settings.png)\n\n### Dark Mode Page\n\n![Dark Mode Page](apps/web/assets/screenshots/darkMode.png)\n\n## 📄 License\n\nThis project is licensed under a **Custom Personal Use License** — you may view and learn from the code, but **commercial use, redistribution, or claiming authorship is strictly prohibited**.\nSee the full [LICENSE](./LICENSE) for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevadarshh%2Fcollabydraw","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdevadarshh%2Fcollabydraw","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevadarshh%2Fcollabydraw/lists"}