Source: https://seerepo.com/r/blakeblackshear/frigate/built
Markdown source: https://seerepo.com/r/blakeblackshear/frigate/built.md
Description: frigate is a TypeScript repo built with FastAPI, AIOHTTP, starlette, uvicorn, Vite, and 2 more. It stores its data in pyzmq and idb-keyval.

# What is frigate built with?

frigate is a TypeScript repo built with FastAPI, AIOHTTP, starlette, uvicorn, Vite, and 2 more. It stores its data in pyzmq and idb-keyval, reaches it with peewee, signs people in with joserfc, py-vapid, and cryptography, uses AI through cuda-python, nvidia-cudnn-cu12, ONNX, onnxruntime-gpu, opencv-contrib-python, and 10 more, connects to Google, makes its content with markupsafe, js-yaml, react-markdown, and remark-gfm, validates its data with Pydantic, pathvalidate, rjsf, Zod, and @hookform/resolvers, is tested with @playwright/test, and deploys with psutil and prometheus-client. It has 304,915 written lines, with 247 test files.

Read on November 6, 2026, at commit 0e90e8e.

Repository: https://github.com/blakeblackshear/frigate

## Backend (/)

### The base

- **[FastAPI](https://seerepo.com/uses/fastapi)**: 20 files

### Data

- **pyzmq**: 7 files

### Data access

- **peewee**: 31 files

### Sign-in

- **joserfc**: 2 files
- **py-vapid**: 2 files
- **[cryptography](https://seerepo.com/uses/cryptography)**: 1 file

### AI

- **cuda-python**
- **nvidia-cudnn-cu12**
- **[ONNX](https://seerepo.com/uses/onnx)**
- **onnxruntime-gpu**
- **opencv-contrib-python**
- **tensorflow-cpu**
- **[onnxruntime](https://seerepo.com/uses/onnxruntime)**: 4 files
- **openvino**: 4 files
- **faster-whisper**: 3 files
- **sherpa-onnx**: 2 files
- **[transformers](https://seerepo.com/uses/transformers)**: 2 files
- **[librosa](https://seerepo.com/uses/librosa)**: 1 file
- **[Ollama](https://seerepo.com/uses/ollama)**: 1 file
- **[TensorFlow](https://seerepo.com/uses/tensorflow)**: 1 file

### Services

- **[OpenAI](https://seerepo.com/uses/openai)**: 3 files · [frigate/data_processing/real_time/whisper_online.py, line 324](https://github.com/blakeblackshear/frigate/blob/0e90e8ee99513576342691ba36c71af36f875cea/frigate/data_processing/real_time/whisper_online.py#L324)
- **[Google](https://seerepo.com/uses/google)**: 1 file · [frigate/genai/plugins/gemini.py, line 1](https://github.com/blakeblackshear/frigate/blob/0e90e8ee99513576342691ba36c71af36f875cea/frigate/genai/plugins/gemini.py#L1)

## Support (/)

### The base

- **[AIOHTTP](https://seerepo.com/uses/aiohttp)**
- **[starlette](https://seerepo.com/uses/starlette)**
- **[uvicorn](https://seerepo.com/uses/uvicorn)**: 1 file

### Content

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

### Validation

- **[Pydantic](https://seerepo.com/uses/pydantic)**: 88 files
- **pathvalidate**: 7 files

### Deploy

- **[psutil](https://seerepo.com/uses/psutil)**: 5 files
- **[prometheus-client](https://seerepo.com/uses/prometheus-client)**: 1 file

### Tools

- **argcomplete**
- **mypy**
- **Ruff**
- **types-requests**
- **click**: 1 file
- **memray**: 1 file

### Other

- **future**
- **netaddr**
- **netifaces**
- **NVIDIA**
- **protobuf**
- **python-multipart**
- **tzdata**
- **NumPy**: 75 files
- **opencv-python-headless**: 48 files
- **ruamel.yaml**: 14 files
- **requests**: 12 files
- **SciPy**: 5 files
- **slowapi**: 2 files
- **tzlocal**: 2 files
- **aiofiles**: 1 file
- **paho-mqtt**: 1 file
- **pandas**: 1 file
- **pyclipper**: 1 file
- **pywebpush**: 1 file
- **rapidfuzz**: 1 file
- **setproctitle**: 1 file
- **shapely**: 1 file
- **soundfile**: 1 file
- **unidecode**: 1 file

## Frontend (web)

### The base

- **[Vite](https://seerepo.com/uses/vite)**: [in web/package.json](https://github.com/blakeblackshear/frigate/blob/0e90e8ee99513576342691ba36c71af36f875cea/web/package.json)
- **[React](https://seerepo.com/uses/react)**: 372 files · [in web/package.json](https://github.com/blakeblackshear/frigate/blob/0e90e8ee99513576342691ba36c71af36f875cea/web/package.json)
- **[react-router-dom](https://seerepo.com/uses/react-router-dom)**: 63 files

### Styles

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

### Interface

- **[sonner](https://seerepo.com/uses/sonner)**: 81 files
- **[Radix UI](https://seerepo.com/uses/radix-ui)**: 52 files
- **[React Hook Form](https://seerepo.com/uses/react-hook-form)**: 24 files
- **Konva**: 7 files
- **[Framer](https://seerepo.com/uses/framer)**: 6 files
- **[react-day-picker](https://seerepo.com/uses/react-day-picker)**: 6 files
- **react-konva**: 6 files
- **react-zoom-pan-pinch**: 6 files
- **scroll-into-view-if-needed**: 6 files
- **apexcharts**: 5 files
- **@rjsf/core**: 1 file
- **[cmdk](https://seerepo.com/uses/cmdk)**: 1 file
- **[monaco-editor](https://seerepo.com/uses/monaco-editor)**: 1 file
- **monaco-yaml**: 1 file
- **[react-dropzone](https://seerepo.com/uses/react-dropzone)**: 1 file
- **react-grid-layout**: 1 file
- **use-long-press**: 1 file
- **[vaul](https://seerepo.com/uses/vaul)**: 1 file
- **virtua**: 1 file

### Icons

- **[react-icons](https://seerepo.com/uses/react-icons)**: 193 files
- **[Lucide](https://seerepo.com/uses/lucide)**: 21 files

## Backend (web)

### Data

- **idb-keyval**: 3 files

## Support (web)

### Content

- **[js-yaml](https://seerepo.com/uses/js-yaml)**: 1 file
- **[react-markdown](https://seerepo.com/uses/react-markdown)**: 1 file
- **[remark-gfm](https://seerepo.com/uses/remark-gfm)**: 1 file

### Validation

- **rjsf**: 71 files
- **[Zod](https://seerepo.com/uses/zod)**: 23 files
- **[@hookform/resolvers](https://seerepo.com/uses/hookform-resolvers)**: 22 files

### Testing

- **@playwright/test**: 42 files

### Other

- **react-i18next**: 260 files
- **SWR**: 158 files
- **react-device-detect**: 107 files
- **Axios**: 81 files
- **Lodash**: 29 files
- **i18next**: 20 files
- **copy-to-clipboard**: 8 files
- **date-fns**: 2 files
- **clsx**: 1 file
- **date-fns-tz**: 1 file
- **hls.js**: 1 file
- **i18next-http-backend**: 1 file

## Other repos with a similar stack

- [Significant-Gravitas/AutoGPT](https://seerepo.com/r/Significant-Gravitas/AutoGPT/built): FastAPI, OpenAI, Google, AIOHTTP, uvicorn, React, cryptography, Ollama, Pydantic, psutil, prometheus-client, Tailwind CSS, class-variance-authority, next-themes, tailwind-merge, sonner, Radix UI, React Hook Form, Framer, react-day-picker, @rjsf/core, cmdk, vaul, react-markdown, remark-gfm, rjsf, Zod, @hookform/resolvers · [Compare](https://seerepo.com/compare/blakeblackshear/frigate/vs/Significant-Gravitas/AutoGPT)
- [langflow-ai/langflow](https://seerepo.com/r/langflow-ai/langflow/built): FastAPI, OpenAI, Google, AIOHTTP, uvicorn, Vite, React, react-router-dom, cryptography, Pydantic, psutil, Tailwind CSS, class-variance-authority, tailwind-merge, Radix UI, Framer, react-day-picker, cmdk, react-icons, Lucide, react-markdown, remark-gfm · [Compare](https://seerepo.com/compare/blakeblackshear/frigate/vs/langflow-ai/langflow)
- [ray-project/ray](https://seerepo.com/r/ray-project/ray/built): FastAPI, pyzmq, Google, AIOHTTP, starlette, uvicorn, React, react-router-dom, peewee, joserfc, cryptography, ONNX, onnxruntime, transformers, TensorFlow, markupsafe, Pydantic, pathvalidate, psutil, prometheus-client, react-icons, js-yaml · [Compare](https://seerepo.com/compare/blakeblackshear/frigate/vs/ray-project/ray)
- [supabase/supabase](https://seerepo.com/r/supabase/supabase/built): OpenAI, Vite, React, Tailwind CSS, class-variance-authority, next-themes, sonner, Radix UI, React Hook Form, react-day-picker, cmdk, monaco-editor, react-dropzone, vaul, Lucide, js-yaml, react-markdown, remark-gfm, Zod, @hookform/resolvers · [Compare](https://seerepo.com/compare/blakeblackshear/frigate/vs/supabase/supabase)
- [vectorize-io/hindsight](https://seerepo.com/r/vectorize-io/hindsight/built): FastAPI, OpenAI, Google, AIOHTTP, uvicorn, React, cryptography, Pydantic, Tailwind CSS, class-variance-authority, next-themes, tailwind-merge, sonner, Radix UI, cmdk, Lucide, js-yaml, react-markdown, remark-gfm, Zod · [Compare](https://seerepo.com/compare/blakeblackshear/frigate/vs/vectorize-io/hindsight)
- [infiniflow/ragflow](https://seerepo.com/r/infiniflow/ragflow/built): OpenAI, Google, AIOHTTP, React, Tailwind CSS, class-variance-authority, next-themes, tailwind-merge, sonner, Radix UI, React Hook Form, react-day-picker, cmdk, react-dropzone, Lucide, react-markdown, remark-gfm, Zod, @hookform/resolvers · [Compare](https://seerepo.com/compare/blakeblackshear/frigate/vs/infiniflow/ragflow)

## Frequently asked questions

### What language is frigate written in?

frigate is written in TypeScript, with 304,915 written lines.

### What framework does frigate use?

frigate is built with FastAPI, AIOHTTP, starlette, uvicorn, Vite, React, and react-router-dom.

### What database does frigate use?

frigate stores its data in pyzmq and idb-keyval and reaches it with peewee.

### What does frigate sign people in with?

frigate signs people in with joserfc, py-vapid, and cryptography.

### Does frigate use AI?

Yes. frigate uses AI through cuda-python, nvidia-cudnn-cu12, ONNX, onnxruntime-gpu, opencv-contrib-python, tensorflow-cpu, onnxruntime, openvino, faster-whisper, sherpa-onnx, transformers, librosa, Ollama, TensorFlow, and OpenAI.

### What services does frigate use?

frigate connects to Google.

The proof: [frigate/genai/plugins/gemini.py, line 1](https://github.com/blakeblackshear/frigate/blob/0e90e8ee99513576342691ba36c71af36f875cea/frigate/genai/plugins/gemini.py#L1)

### Does frigate have tests?

Yes. frigate has 247 test files and is tested with @playwright/test.

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

The ones that share most of its stack: Significant-Gravitas/AutoGPT, langflow-ai/langflow, and ray-project/ray.

## 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.
