Skip to content
banjoPublic

About

Excalidraw with some nice features

Resources

Stars

0 stars

Watchers

3 watching

Forks

Repository files navigation

banjodraw

A drawing board built on Excalidraw, with collaboration, saved boards, and a few extras.

Open BanjoDraw

Highlights

  • 🤝 Real-time collaboration: draw and brainstorm with others over WebSockets
  • 💾 Persistent boards: save as many boards and images as you want to your account
  • 🔐 Sign in with GitHub or Google, and your boards and favorites sync across devices
  • 🧱 Custom elements: database models, code blocks with syntax highlighting, Mermaid diagrams, swimlanes, Markdown notes, tables, charts, link cards, and smart copy and extend
  • 🖼️ Upload, share, and manage images right on the board
  • ⚡️ Add shapes, logos, emojis, flags, and thousands of icons from one search (⌘K)
  • ✨ Create or change diagrams with AI, as shapes and blocks or as Mermaid (10 a day for free)
  • ✏️ Everything else is plain Excalidraw, so it works the way you already know

Getting started

Open draw.banjoanton.com and start drawing.

To run it yourself, you need Node.js (see .nvmrc), pnpm, and Docker for the database:

pnpm install
cp apps/api/.env.example apps/api/.env
cp apps/web/.env.example apps/web/.env
cp packages/db/.env.example packages/db/.env
pnpm db:reset          # Start Postgres and S3 in Docker, and create the tables.
pnpm dev               # Run the web app and the API.

Open localhost:3005 and use "Sign in locally" to sign in without OAuth.

The AI features need DEEPSEEK_API_KEY in apps/api/.env. Pro accounts (plan on the user) have no daily limit.

Development

pnpm build        # Build all apps.
pnpm typecheck    # Type check everything.
pnpm lint         # Lint everything.
pnpm test         # Run the tests.
pnpm db:reset     # Recreate the database. This removes all data.

The repository is a pnpm workspace run with Turborepo:

  • apps/web: React, Vite, Tailwind, and tRPC
  • apps/api: Node.js, Express, tRPC, and WebSockets
  • packages/db: Prisma and PostgreSQL
  • packages/server: Auth with Lucia, and shared server code

Contributing

Pull requests and issues are welcome. GitHub Actions type checks, lints, tests, and builds every pull request.

License

MIT

About

Excalidraw with some nice features

Resources

Stars

0 stars

Watchers

3 watching

Forks

Used by

Contributors

Languages