Source: https://seerepo.com/r/eigent-ai/eigent/built
Markdown source: https://seerepo.com/r/eigent-ai/eigent/built.md
Description: eigent is a TypeScript repo built with React, react-router-dom, Vite, FastAPI, Electron, and 1 more. It stores its data in Celery.

# What is eigent built with?

eigent is a TypeScript repo built with React, react-router-dom, Vite, FastAPI, Electron, and 1 more. It stores its data in Celery, reaches it with sqlmodel, sqlalchemy-utils, and alembic, signs people in with bcrypt, cryptography, pyjwt, itsdangerous, and passlib, uses AI through camel-ai, exa-py, and OpenAI, makes its content with openpyxl, dompurify, csv-parser, mammoth, marked, and 2 more, validates its data with Pydantic and jsonschema, is tested with Vitest, Testing Library, and @playwright/test, deploys with opentelemetry-api, loguru, electron-log, OpenTelemetry, and opentelemetry-sdk, and uses psycopg2-binary, Redis, and Postgres. It has 657,072 written lines, with 704 test files.

Read on November 7, 2026, at commit 4958c94.

Repository: https://github.com/eigent-ai/eigent

## Frontend

### The base

- **[React](https://seerepo.com/uses/react)**: 332 files · [in package.json](https://github.com/eigent-ai/eigent/blob/4958c94bd91faf4e0bfff270a971d4d1810fb6db/package.json)
- **[react-router-dom](https://seerepo.com/uses/react-router-dom)**: 36 files
- **[Vite](https://seerepo.com/uses/vite)**: 2 files · [in package.json](https://github.com/eigent-ai/eigent/blob/4958c94bd91faf4e0bfff270a971d4d1810fb6db/package.json)

### Styles

- **[Tailwind CSS](https://seerepo.com/uses/tailwind-css)**
- **[class-variance-authority](https://seerepo.com/uses/class-variance-authority)**: 13 files
- **@fontsource/inter**: 1 file
- **[tailwind-merge](https://seerepo.com/uses/tailwind-merge)**: 1 file

### Interface

- **[sonner](https://seerepo.com/uses/sonner)**: 56 files
- **[Framer](https://seerepo.com/uses/framer)**: 52 files
- **[Radix UI](https://seerepo.com/uses/radix-ui)**: 22 files
- **[motion](https://seerepo.com/uses/motion)**: 14 files
- **[monaco-editor](https://seerepo.com/uses/monaco-editor)**: 7 files
- **[xyflow](https://seerepo.com/uses/xyflow)**: 6 files
- **[react-resizable-panels](https://seerepo.com/uses/react-resizable-panels)**: 3 files
- **[xterm](https://seerepo.com/uses/xterm)**: 3 files
- **[cmdk](https://seerepo.com/uses/cmdk)**: 1 file
- **[embla-carousel-react](https://seerepo.com/uses/embla-carousel-react)**: 1 file
- **GSAP**: 1 file
- **morphicons**: 1 file

### Icons

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

## Backend

### The base

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

### Data

- **[psycopg2-binary](https://seerepo.com/uses/psycopg2-binary)**
- **[Redis](https://seerepo.com/uses/redis)**: 6 files · [server/app/__init__.py, line 20](https://github.com/eigent-ai/eigent/blob/4958c94bd91faf4e0bfff270a971d4d1810fb6db/server/app/__init__.py#L20)
- **[Celery](https://seerepo.com/uses/celery)**: 2 files
- **[Postgres](https://seerepo.com/uses/postgres)**: 1 file · [server/pyproject.toml, line 27](https://github.com/eigent-ai/eigent/blob/4958c94bd91faf4e0bfff270a971d4d1810fb6db/server/pyproject.toml#L27)

### Data access

- **sqlmodel**: 74 files
- **sqlalchemy-utils**: 12 files
- **[alembic](https://seerepo.com/uses/alembic)**: 1 file

### Sign-in

- **[bcrypt](https://seerepo.com/uses/bcrypt)**
- **[cryptography](https://seerepo.com/uses/cryptography)**
- **[pyjwt](https://seerepo.com/uses/pyjwt)**: 4 files
- **[itsdangerous](https://seerepo.com/uses/itsdangerous)**: 2 files
- **passlib**: 2 files

### AI

- **camel-ai**
- **exa-py**: 1 file

### Services

- **[OpenAI](https://seerepo.com/uses/openai)**: 4 files · [backend/app/model/provider_wait.py, line 27](https://github.com/eigent-ai/eigent/blob/4958c94bd91faf4e0bfff270a971d4d1810fb6db/backend/app/model/provider_wait.py#L27)

## Support

### The base

- **[Electron](https://seerepo.com/uses/electron)**: 17 files
- **[uvicorn](https://seerepo.com/uses/uvicorn)**: 1 file

### Content

- **[openpyxl](https://seerepo.com/uses/openpyxl)**
- **[dompurify](https://seerepo.com/uses/dompurify)**: 4 files
- **csv-parser**: 1 file
- **[mammoth](https://seerepo.com/uses/mammoth)**: 1 file
- **[marked](https://seerepo.com/uses/marked)**: 1 file
- **[papaparse](https://seerepo.com/uses/papaparse)**: 1 file
- **[xml2js](https://seerepo.com/uses/xml2js)**: 1 file

### Validation

- **[Pydantic](https://seerepo.com/uses/pydantic)**: 66 files
- **[jsonschema](https://seerepo.com/uses/jsonschema)**: 1 file

### Testing

- **Vitest**: 409 files
- **Testing Library**: 185 files
- **@playwright/test**: 4 files

### Deploy

- **[opentelemetry-api](https://seerepo.com/uses/opentelemetry-api)**
- **[loguru](https://seerepo.com/uses/loguru)**: 27 files
- **[electron-log](https://seerepo.com/uses/electron-log)**: 11 files
- **[OpenTelemetry](https://seerepo.com/uses/opentelemetry)**: 1 file
- **[opentelemetry-sdk](https://seerepo.com/uses/opentelemetry-sdk)**: 1 file

### Tools

- **pip**
- **TypeScript**: 3 files
- **@vitejs/plugin-react**: 2 files
- **tree-kill**: 2 files
- **@electron/notarize**: 1 file
- **click**: 1 file
- **debugpy**: 1 file
- **electron-devtools-installer**: 1 file
- **esbuild**: 1 file

### Other

- **arrow**
- **NumPy**
- **pandas**
- **python-multipart**
- **react-i18next**: 219 files
- **i18next**: 41 files
- **zustand**: 29 files
- **httpx**: 19 files
- **pyyaml**: 6 files
- **python-dotenv**: 4 files
- **date-fns**: 3 files
- **fastapi-limiter**: 3 files
- **[TanStack](https://seerepo.com/uses/tanstack)**: 3 files
- **electron-updater**: 2 files
- **inflection**: 2 files
- **koffi**: 2 files
- **mime**: 2 files
- **@microsoft/fetch-event-source**: 1 file
- **aiofiles**: 1 file
- **archiver**: 1 file
- **Axios**: 1 file
- **clsx**: 1 file
- **node-pty**: 1 file
- **requests**: 1 file
- **slack-sdk**: 1 file
- **truststore**: 1 file
- **unzipper**: 1 file

## Other repos with a similar stack

- [Significant-Gravitas/AutoGPT](https://seerepo.com/r/Significant-Gravitas/AutoGPT/built): React, FastAPI, psycopg2-binary, Redis, Postgres, OpenAI, uvicorn, Tailwind CSS, class-variance-authority, tailwind-merge, sonner, Framer, Radix UI, motion, cmdk, embla-carousel-react, bcrypt, cryptography, pyjwt, exa-py, openpyxl, Pydantic, jsonschema · [Compare](https://seerepo.com/compare/eigent-ai/eigent/vs/Significant-Gravitas/AutoGPT)
- [langflow-ai/langflow](https://seerepo.com/r/langflow-ai/langflow/built): React, react-router-dom, Vite, FastAPI, Redis, OpenAI, uvicorn, Tailwind CSS, class-variance-authority, tailwind-merge, Framer, Radix UI, xyflow, cmdk, Lucide, bcrypt, cryptography, pyjwt, exa-py, dompurify, Pydantic, jsonschema, loguru · [Compare](https://seerepo.com/compare/eigent-ai/eigent/vs/langflow-ai/langflow)
- [bytedance/deer-flow](https://seerepo.com/r/bytedance/deer-flow/built): React, FastAPI, uvicorn, Tailwind CSS, class-variance-authority, tailwind-merge, sonner, Radix UI, motion, react-resizable-panels, cmdk, embla-carousel-react, GSAP, Lucide, alembic, bcrypt, cryptography, pyjwt, exa-py, papaparse, jsonschema · [Compare](https://seerepo.com/compare/bytedance/deer-flow/vs/eigent-ai/eigent)
- [unslothai/unsloth](https://seerepo.com/r/unslothai/unsloth/built): React, Vite, FastAPI, OpenAI, uvicorn, Tailwind CSS, class-variance-authority, tailwind-merge, sonner, Radix UI, motion, xyflow, react-resizable-panels, cmdk, Lucide, cryptography, pyjwt, mammoth, marked, Pydantic, loguru · [Compare](https://seerepo.com/compare/eigent-ai/eigent/vs/unslothai/unsloth)
- [datawhalechina/hello-agents](https://seerepo.com/r/datawhalechina/hello-agents/built): React, react-router-dom, Vite, FastAPI, psycopg2-binary, Redis, Postgres, OpenAI, uvicorn, Tailwind CSS, alembic, bcrypt, openpyxl, dompurify, marked, Pydantic, jsonschema, loguru, OpenTelemetry · [Compare](https://seerepo.com/compare/datawhalechina/hello-agents/vs/eigent-ai/eigent)
- [vectorize-io/hindsight](https://seerepo.com/r/vectorize-io/hindsight/built): React, FastAPI, psycopg2-binary, Postgres, OpenAI, uvicorn, Tailwind CSS, class-variance-authority, tailwind-merge, sonner, Radix UI, cmdk, Lucide, alembic, cryptography, pyjwt, Pydantic, opentelemetry-api, OpenTelemetry · [Compare](https://seerepo.com/compare/eigent-ai/eigent/vs/vectorize-io/hindsight)

## Frequently asked questions

### What language is eigent written in?

eigent is written in TypeScript, with 657,072 written lines.

### What framework does eigent use?

eigent is built with React, react-router-dom, Vite, FastAPI, Electron, and uvicorn.

The proof: [in package.json](https://github.com/eigent-ai/eigent/blob/4958c94bd91faf4e0bfff270a971d4d1810fb6db/package.json)

### What database does eigent use?

eigent stores its data in Celery and reaches it with sqlmodel, sqlalchemy-utils, and alembic.

### What does eigent sign people in with?

eigent signs people in with bcrypt, cryptography, pyjwt, itsdangerous, and passlib.

### Does eigent use AI?

Yes. eigent uses AI through camel-ai, exa-py, and OpenAI.

### What services does eigent use?

eigent uses psycopg2-binary, Redis, and Postgres.

### Does eigent have tests?

Yes. eigent has 704 test files and is tested with Vitest, Testing Library, and @playwright/test.

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

The ones that share most of its stack: Significant-Gravitas/AutoGPT, langflow-ai/langflow, and bytedance/deer-flow.

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