Source: https://seerepo.com/r/nexmoe/VidBee/built
Markdown source: https://seerepo.com/r/nexmoe/VidBee/built.md
Description: VidBee is a TypeScript repo built with Fastify, @orpc/server, Vite, React, TanStack, and 3 more. It reaches its data with Drizzle.

# What is VidBee built with?

VidBee is a TypeScript repo built with Fastify, @orpc/server, Vite, React, TanStack, and 3 more. It reaches its data with Drizzle, signs people in with Better Auth and @gotgenes/pi-permission-system, uses AI through Pi and sherpa-onnx-node, watches its errors with Sentry, makes its content with streamdown, yaml, marked, and rss-parser, validates its data with @orpc/zod, Zod, and typebox, deploys with electron-log and evlog, and uses SQLite, electron-store, and MCP. It has 161,552 written lines, with 1 test file.

Read on November 12, 2026, at commit 6082e26.

Repository: https://github.com/nexmoe/VidBee

## Backend (apps/api)

### The base

- **[Fastify](https://seerepo.com/uses/fastify)**: 1 file · [in apps/api/package.json](https://github.com/nexmoe/VidBee/blob/6082e2604f0c37d942cdb896040aa0c88b5c527f/apps/api/package.json)

### Data

- **[SQLite](https://seerepo.com/uses/sqlite)**: 1 file · [apps/desktop/src/main/lib/task-queue-host.ts, line 124](https://github.com/nexmoe/VidBee/blob/6082e2604f0c37d942cdb896040aa0c88b5c527f/apps/desktop/src/main/lib/task-queue-host.ts#L124)

### Data access

- **[Drizzle](https://seerepo.com/uses/drizzle)**: 2 files

## Support (apps/api)

### The base

- **@orpc/server**: 3 files

### Validation

- **@orpc/zod**: 1 file

### Other

- **@fastify/cors**: 1 file
- **@orpc/openapi**: 1 file

## Backend (apps/cli)

### Data

- **[SQLite](https://seerepo.com/uses/sqlite)**: 1 file · [apps/desktop/src/main/lib/task-queue-host.ts, line 124](https://github.com/nexmoe/VidBee/blob/6082e2604f0c37d942cdb896040aa0c88b5c527f/apps/desktop/src/main/lib/task-queue-host.ts#L124)

## Frontend (apps/desktop)

### The base

- **[Vite](https://seerepo.com/uses/vite)**: [in apps/web/package.json](https://github.com/nexmoe/VidBee/blob/6082e2604f0c37d942cdb896040aa0c88b5c527f/apps/web/package.json)
- **[React](https://seerepo.com/uses/react)**: 109 files · [in apps/web/package.json](https://github.com/nexmoe/VidBee/blob/6082e2604f0c37d942cdb896040aa0c88b5c527f/apps/web/package.json)
- **[TanStack](https://seerepo.com/uses/tanstack)**: 16 files

### Styles

- **[Tailwind CSS](https://seerepo.com/uses/tailwind-css)**
- **[next-themes](https://seerepo.com/uses/next-themes)**: 5 files
- **[tailwind-merge](https://seerepo.com/uses/tailwind-merge)**: 1 file

### Interface

- **[sonner](https://seerepo.com/uses/sonner)**: 33 files
- **[@tanstack/react-virtual](https://seerepo.com/uses/tanstack-react-virtual)**: 3 files
- **@videojs/react**: 1 file
- **[react-resizable-panels](https://seerepo.com/uses/react-resizable-panels)**: 1 file

### Icons

- **[Lucide](https://seerepo.com/uses/lucide)**: 43 files

## Backend (apps/desktop)

### Data

- **[SQLite](https://seerepo.com/uses/sqlite)**: 7 files · [apps/desktop/src/main/lib/task-queue-host.ts, line 124](https://github.com/nexmoe/VidBee/blob/6082e2604f0c37d942cdb896040aa0c88b5c527f/apps/desktop/src/main/lib/task-queue-host.ts#L124)
- **[electron-store](https://seerepo.com/uses/electron-store)**: 3 files

### Data access

- **[Drizzle](https://seerepo.com/uses/drizzle)**: 3 files

### Sign-in

- **[Better Auth](https://seerepo.com/uses/better-auth)**: 2 files
- **@gotgenes/pi-permission-system**: 1 file

### AI

- **[Pi](https://seerepo.com/uses/pi)**: 26 files
- **sherpa-onnx-node**: 1 file

### Services

- **[MCP](https://seerepo.com/uses/mcp)**: 2 files · [apps/desktop/src/main/mcp/http.ts, line 2](https://github.com/nexmoe/VidBee/blob/6082e2604f0c37d942cdb896040aa0c88b5c527f/apps/desktop/src/main/mcp/http.ts#L2)
- **[Sentry](https://seerepo.com/uses/sentry)**: 2 files · [apps/desktop/src/renderer/src/lib/glitchtip.ts, line 1](https://github.com/nexmoe/VidBee/blob/6082e2604f0c37d942cdb896040aa0c88b5c527f/apps/desktop/src/renderer/src/lib/glitchtip.ts#L1)

## Support (apps/desktop)

### The base

- **[Electron](https://seerepo.com/uses/electron)**: 50 files
- **@earendil-works/chord**: 3 files
- **@electron-toolkit/preload**: 1 file

### Content

- **[streamdown](https://seerepo.com/uses/streamdown)**: 2 files
- **[yaml](https://seerepo.com/uses/yaml)**: 2 files
- **[marked](https://seerepo.com/uses/marked)**: 1 file

### Validation

- **[Zod](https://seerepo.com/uses/zod)**: 24 files
- **[typebox](https://seerepo.com/uses/typebox)**: 7 files

### Deploy

- **[electron-log](https://seerepo.com/uses/electron-log)**: 9 files

### Tools

- **@vitejs/plugin-react**: 1 file
- **jiti**: 1 file

### Other

- **react-i18next**: 81 files
- **jotai**: 57 files
- **electron-ipc-decorator**: 18 files
- **@earendil-works/pi-durable**: 5 files
- **electron-updater**: 2 files
- **i18next**: 2 files
- **@electron-toolkit/utils**: 1 file
- **adm-zip**: 1 file
- **clsx**: 1 file
- **dayjs**: 1 file

## Frontend (apps/extension)

### The base

- **[React](https://seerepo.com/uses/react)**: 2 files · [in apps/web/package.json](https://github.com/nexmoe/VidBee/blob/6082e2604f0c37d942cdb896040aa0c88b5c527f/apps/web/package.json)

## Frontend (apps/web)

### The base

- **[Vite](https://seerepo.com/uses/vite)**: [in apps/web/package.json](https://github.com/nexmoe/VidBee/blob/6082e2604f0c37d942cdb896040aa0c88b5c527f/apps/web/package.json)
- **[React](https://seerepo.com/uses/react)**: 13 files · [in apps/web/package.json](https://github.com/nexmoe/VidBee/blob/6082e2604f0c37d942cdb896040aa0c88b5c527f/apps/web/package.json)
- **[TanStack](https://seerepo.com/uses/tanstack)**: 9 files

### Styles

- **[Tailwind CSS](https://seerepo.com/uses/tailwind-css)**

### Interface

- **[sonner](https://seerepo.com/uses/sonner)**: 7 files

### Icons

- **[Lucide](https://seerepo.com/uses/lucide)**: 11 files

## Support (apps/web)

### Tools

- **@tanstack/react-devtools**: 1 file

### Other

- **react-i18next**: 13 files
- **i18next**: 1 file
- **orpc**: 1 file

## Backend (packages/db)

### Data access

- **[Drizzle](https://seerepo.com/uses/drizzle)**: 5 files

## Support (packages/downloader-core)

### Validation

- **[Zod](https://seerepo.com/uses/zod)**: 1 file

### Other

- **@orpc/contract**: 1 file

## Support (packages/i18n)

### Other

- **i18next**: 2 files

## Support (packages/logger)

### Deploy

- **evlog**: 3 files

## Backend (packages/subscriptions-core)

### Data access

- **[Drizzle](https://seerepo.com/uses/drizzle)**: 1 file

## Support (packages/subscriptions-core)

### Content

- **[rss-parser](https://seerepo.com/uses/rss-parser)**: 1 file

### Validation

- **[Zod](https://seerepo.com/uses/zod)**: 1 file

### Other

- **@orpc/contract**: 1 file
- **ulid**: 1 file

## Support (packages/task-queue)

### Validation

- **[Zod](https://seerepo.com/uses/zod)**: 1 file

### Other

- **@orpc/contract**: 1 file

## Backend (packages/transcription)

### AI

- **sherpa-onnx-node**: 2 files

## Support (packages/transcription)

### Other

- **opencc-js**: 1 file

## Frontend (packages/ui)

### The base

- **[React](https://seerepo.com/uses/react)**: 91 files · [in apps/web/package.json](https://github.com/nexmoe/VidBee/blob/6082e2604f0c37d942cdb896040aa0c88b5c527f/apps/web/package.json)

### Styles

- **[class-variance-authority](https://seerepo.com/uses/class-variance-authority)**: 8 files
- **[next-themes](https://seerepo.com/uses/next-themes)**: 1 file
- **[tailwind-merge](https://seerepo.com/uses/tailwind-merge)**: 1 file

### Interface

- **[Radix UI](https://seerepo.com/uses/radix-ui)**: 20 files
- **[Framer](https://seerepo.com/uses/framer)**: 13 files
- **[Base UI](https://seerepo.com/uses/base-ui)**: 10 files
- **[sonner](https://seerepo.com/uses/sonner)**: 3 files
- **json-render**: 2 files
- **[TanStack](https://seerepo.com/uses/tanstack)**: 2 files
- **@shadcn/react**: 1 file
- **[@streamdown/code](https://seerepo.com/uses/streamdown-code)**: 1 file
- **[pele](https://seerepo.com/uses/pele)**: 1 file
- **[react-resizable-panels](https://seerepo.com/uses/react-resizable-panels)**: 1 file

### Icons

- **[Lucide](https://seerepo.com/uses/lucide)**: 41 files

## Support (packages/ui)

### Content

- **[streamdown](https://seerepo.com/uses/streamdown)**: 3 files

### Validation

- **[Zod](https://seerepo.com/uses/zod)**: 2 files

### Other

- **react-i18next**: 9 files
- **clsx**: 1 file

## Other repos with a similar stack

- [CherryHQ/cherry-studio](https://seerepo.com/r/CherryHQ/cherry-studio/built): SQLite, Vite, React, TanStack, electron-store, MCP, Sentry, Electron, @earendil-works/chord, @electron-toolkit/preload, Drizzle, Tailwind CSS, tailwind-merge, @tanstack/react-virtual, react-resizable-panels, Lucide, streamdown, yaml, Zod, class-variance-authority, Radix UI · [Compare](https://seerepo.com/compare/CherryHQ/cherry-studio/vs/nexmoe/VidBee)
- [cline/cline](https://seerepo.com/r/cline/cline/built): SQLite, Vite, React, MCP, Tailwind CSS, next-themes, tailwind-merge, sonner, Lucide, streamdown, yaml, marked, Zod, class-variance-authority, Radix UI, Base UI, @shadcn/react · [Compare](https://seerepo.com/compare/cline/cline/vs/nexmoe/VidBee)
- [shadcn-ui/ui](https://seerepo.com/r/shadcn-ui/ui/built): SQLite, Vite, React, TanStack, MCP, Tailwind CSS, next-themes, sonner, react-resizable-panels, Lucide, streamdown, Zod, class-variance-authority, Radix UI, Base UI · [Compare](https://seerepo.com/compare/nexmoe/VidBee/vs/shadcn-ui/ui)
- [paperclipai/paperclip](https://seerepo.com/r/paperclipai/paperclip/built): Vite, React, MCP, Sentry, Drizzle, Tailwind CSS, tailwind-merge, react-resizable-panels, Lucide, Better Auth, yaml, Zod, class-variance-authority, Radix UI, Base UI · [Compare](https://seerepo.com/compare/nexmoe/VidBee/vs/paperclipai/paperclip)
- [ruvnet/ruflo](https://seerepo.com/r/ruvnet/ruflo/built): SQLite, Vite, React, MCP, Tailwind CSS, next-themes, tailwind-merge, sonner, react-resizable-panels, Lucide, yaml, marked, Zod, class-variance-authority, Radix UI · [Compare](https://seerepo.com/compare/nexmoe/VidBee/vs/ruvnet/ruflo)
- [janhq/jan](https://seerepo.com/r/janhq/jan/built): SQLite, Vite, React, TanStack, Tailwind CSS, tailwind-merge, sonner, @tanstack/react-virtual, Lucide, streamdown, Zod, class-variance-authority, Radix UI, Framer, @streamdown/code · [Compare](https://seerepo.com/compare/janhq/jan/vs/nexmoe/VidBee)

## Frequently asked questions

### What language is VidBee written in?

VidBee is written in TypeScript, with 161,552 written lines.

### What framework does VidBee use?

VidBee is built with Fastify, @orpc/server, Vite, React, TanStack, Electron, @earendil-works/chord, and @electron-toolkit/preload.

The proof: [in apps/api/package.json](https://github.com/nexmoe/VidBee/blob/6082e2604f0c37d942cdb896040aa0c88b5c527f/apps/api/package.json)

### What does VidBee sign people in with?

VidBee signs people in with Better Auth and @gotgenes/pi-permission-system.

### Does VidBee use AI?

Yes. VidBee uses AI through Pi and sherpa-onnx-node.

### What services does VidBee use?

VidBee watches its errors with Sentry and uses SQLite, electron-store, and MCP.

The proof: [apps/desktop/src/renderer/src/lib/glitchtip.ts, line 1](https://github.com/nexmoe/VidBee/blob/6082e2604f0c37d942cdb896040aa0c88b5c527f/apps/desktop/src/renderer/src/lib/glitchtip.ts#L1)

### Does VidBee have tests?

Yes. VidBee has 1 test file.

### Which repos have a stack like VidBee's?

The ones that share most of its stack: CherryHQ/cherry-studio, cline/cline, and shadcn-ui/ui.

## What is your repo built with?

Any public repo, with no account: https://seerepo.com/r/owner/repo/built, with the owner and name it has on GitHub.
