Source: https://seerepo.com/r/open-jarvis/OpenJarvis/built
Markdown source: https://seerepo.com/r/open-jarvis/OpenJarvis/built.md
Description: OpenJarvis is a Python repo built with FastAPI, Tokio, Vite, React, @tauri-apps/api, and 2 more. It stores its data in SQLite.

# What is OpenJarvis built with?

OpenJarvis is a Python repo built with FastAPI, Tokio, Vite, React, @tauri-apps/api, and 2 more. It stores its data in SQLite, signs people in with ed25519-dalek and keyring, uses AI through datasets, OpenAI, and Anthropic, measures its use with PostHog, makes its content with react-markdown, remark-gfm, katex, rehype-highlight, rehype-katex, and 2 more, validates its data with schemars, is tested with Vitest, deploys with tracing, psutil, and tauri-apps, and uses rusqlite. It has 387,411 written lines, with 759 test files.

Read on November 9, 2026, at commit a4aa027.

Repository: https://github.com/open-jarvis/OpenJarvis

## Frontend (/)

### Interface

- **[Rich](https://seerepo.com/uses/rich)**: 36 files

## Backend (/)

### The base

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

### Data

- **[rusqlite](https://seerepo.com/uses/rusqlite)**
- **[SQLite](https://seerepo.com/uses/sqlite)**: 17 files · [rust/crates/openjarvis-tools/src/storage/sqlite.rs, line 6](https://github.com/open-jarvis/OpenJarvis/blob/a4aa0271dd1479ef547d24cf69a62e0e8307d22c/rust/crates/openjarvis-tools/src/storage/sqlite.rs#L6)

### Sign-in

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

### AI

- **[datasets](https://seerepo.com/uses/datasets)**

### Services

- **[OpenAI](https://seerepo.com/uses/openai)**: 6 files · [src/openjarvis/agents/hybrid/_openai_retry.py, line 174](https://github.com/open-jarvis/OpenJarvis/blob/a4aa0271dd1479ef547d24cf69a62e0e8307d22c/src/openjarvis/agents/hybrid/_openai_retry.py#L174)
- **[PostHog](https://seerepo.com/uses/posthog)**: 1 file · [frontend/src/lib/analytics.ts, line 20](https://github.com/open-jarvis/OpenJarvis/blob/a4aa0271dd1479ef547d24cf69a62e0e8307d22c/frontend/src/lib/analytics.ts#L20)

## Support (/)

### The base

- **[Tokio](https://seerepo.com/uses/tokio)**: 2 files

### Validation

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

### Deploy

- **[tracing](https://seerepo.com/uses/tracing)**: 3 files
- **[psutil](https://seerepo.com/uses/psutil)**: 2 files

### Tools

- **click**: 44 files

### Other

- **nvidia-ml-py**
- **python-telegram-bot**
- **websockets**
- **serde_json**: 73 files
- **httpx**: 60 files
- **serde**: 31 files
- **parking_lot**: 18 files
- **pyo3**: 18 files
- **once_cell**: 16 files
- **async-trait**: 15 files
- **tomli**: 15 files
- **regex**: 11 files
- **uuid**: 11 files
- **futures**: 6 files
- **reqwest**: 6 files
- **toml**: 5 files
- **tomlkit**: 4 files
- **thiserror**: 3 files
- **croniter**: 2 files
- **rand**: 2 files
- **sha2**: 2 files
- **chrono**: 1 file
- **ddgs**: 1 file
- **meval**: 1 file
- **tokio-stream**: 1 file
- **url**: 1 file

## Frontend (frontend)

### The base

- **[Vite](https://seerepo.com/uses/vite)**: [in frontend/package.json](https://github.com/open-jarvis/OpenJarvis/blob/a4aa0271dd1479ef547d24cf69a62e0e8307d22c/frontend/package.json)
- **[React](https://seerepo.com/uses/react)**: 47 files · [in frontend/package.json](https://github.com/open-jarvis/OpenJarvis/blob/a4aa0271dd1479ef547d24cf69a62e0e8307d22c/frontend/package.json)
- **[@tauri-apps/api](https://seerepo.com/uses/tauri-apps-api)**: 9 files
- **[React Router](https://seerepo.com/uses/react-router)**: 7 files
- **[Tauri](https://seerepo.com/uses/tauri)**: 1 file

### Styles

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

### Interface

- **[Base UI](https://seerepo.com/uses/base-ui)**: 5 files
- **[recharts](https://seerepo.com/uses/recharts)**: 3 files
- **[sonner](https://seerepo.com/uses/sonner)**: 3 files
- **[motion](https://seerepo.com/uses/motion)**: 1 file
- **[tauri-plugin-dialog](https://seerepo.com/uses/tauri-plugin-dialog)**: 1 file
- **[tauri-plugin-notification](https://seerepo.com/uses/tauri-plugin-notification)**: 1 file

### Icons

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

## Backend (frontend)

### The base

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

### Sign-in

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

### Services

- **[PostHog](https://seerepo.com/uses/posthog)**: 1 file · [frontend/src/lib/analytics.ts, line 20](https://github.com/open-jarvis/OpenJarvis/blob/a4aa0271dd1479ef547d24cf69a62e0e8307d22c/frontend/src/lib/analytics.ts#L20)

## Support (frontend)

### Content

- **[react-markdown](https://seerepo.com/uses/react-markdown)**: 2 files
- **[remark-gfm](https://seerepo.com/uses/remark-gfm)**: 2 files
- **[katex](https://seerepo.com/uses/katex)**: 1 file
- **[rehype-highlight](https://seerepo.com/uses/rehype-highlight)**: 1 file
- **[rehype-katex](https://seerepo.com/uses/rehype-katex)**: 1 file
- **[remark-math](https://seerepo.com/uses/remark-math)**: 1 file

### Testing

- **Vitest**: 23 files

### Deploy

- **[tauri-apps](https://seerepo.com/uses/tauri-apps)**: 2 files

### Other

- **zustand**: 2 files
- **@tauri-apps/plugin-dialog**: 1 file
- **clsx**: 1 file
- **dispatch**: 1 file
- **objc**: 1 file
- **reqwest**: 1 file
- **serde**: 1 file
- **serde_json**: 1 file
- **tauri-plugin-autostart**: 1 file
- **tauri-plugin-global-shortcut**: 1 file
- **tauri-plugin-process**: 1 file
- **tauri-plugin-shell**: 1 file
- **tauri-plugin-single-instance**: 1 file
- **tauri-plugin-updater**: 1 file
- **toml_edit**: 1 file

## Backend (src/openjarvis/agents/claude_code_runner)

### Services

- **[Anthropic](https://seerepo.com/uses/anthropic)**: 1 file · [src/openjarvis/agents/claude_code_runner/index.mjs, line 8](https://github.com/open-jarvis/OpenJarvis/blob/a4aa0271dd1479ef547d24cf69a62e0e8307d22c/src/openjarvis/agents/claude_code_runner/index.mjs#L8)

## Support (src/openjarvis/channels/whatsapp_baileys_bridge)

### Content

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

### Other

- **@whiskeysockets/baileys**: 1 file

## Other repos with a similar stack

- [unslothai/unsloth](https://seerepo.com/r/unslothai/unsloth/built): FastAPI, OpenAI, Tokio, Vite, React, @tauri-apps/api, Tauri, Rich, datasets, psutil, Tailwind CSS, class-variance-authority, tailwind-merge, Base UI, recharts, sonner, motion, tauri-plugin-dialog, tauri-plugin-notification, Lucide, katex · [Compare](https://seerepo.com/compare/open-jarvis/OpenJarvis/vs/unslothai/unsloth)
- [Significant-Gravitas/AutoGPT](https://seerepo.com/r/Significant-Gravitas/AutoGPT/built): FastAPI, OpenAI, PostHog, React, Anthropic, Rich, psutil, Tailwind CSS, class-variance-authority, tailwind-merge, recharts, sonner, motion, react-markdown, remark-gfm, katex, rehype-highlight, rehype-katex, remark-math · [Compare](https://seerepo.com/compare/open-jarvis/OpenJarvis/vs/Significant-Gravitas/AutoGPT)
- [cline/cline](https://seerepo.com/r/cline/cline/built): SQLite, OpenAI, PostHog, Vite, React, Anthropic, Tailwind CSS, class-variance-authority, tailwind-merge, Base UI, recharts, sonner, motion, Lucide, react-markdown, remark-gfm, rehype-highlight · [Compare](https://seerepo.com/compare/cline/cline/vs/open-jarvis/OpenJarvis)
- [BerriAI/litellm](https://seerepo.com/r/BerriAI/litellm/built): FastAPI, rusqlite, SQLite, OpenAI, Tokio, React, Anthropic, schemars, tracing, Tailwind CSS, class-variance-authority, Base UI, recharts, sonner, Lucide, react-markdown, remark-gfm · [Compare](https://seerepo.com/compare/BerriAI/litellm/vs/open-jarvis/OpenJarvis)
- [bojieli/ai-agent-book](https://seerepo.com/r/bojieli/ai-agent-book/built): FastAPI, OpenAI, PostHog, Vite, React, Anthropic, Rich, datasets, psutil, Tailwind CSS, class-variance-authority, tailwind-merge, recharts, Lucide, react-markdown, remark-gfm, katex · [Compare](https://seerepo.com/compare/bojieli/ai-agent-book/vs/open-jarvis/OpenJarvis)
- [NousResearch/hermes-agent](https://seerepo.com/r/NousResearch/hermes-agent/built): FastAPI, Tokio, Vite, React, @tauri-apps/api, React Router, Tauri, Rich, tracing, Tailwind CSS, class-variance-authority, tailwind-merge, motion, Lucide, katex, remark-math · [Compare](https://seerepo.com/compare/NousResearch/hermes-agent/vs/open-jarvis/OpenJarvis)

## Frequently asked questions

### What language is OpenJarvis written in?

OpenJarvis is written in Python, with 387,411 written lines.

### What framework does OpenJarvis use?

OpenJarvis is built with FastAPI, Tokio, Vite, React, @tauri-apps/api, React Router, and Tauri.

### What database does OpenJarvis use?

OpenJarvis stores its data in SQLite.

The proof: [rust/crates/openjarvis-tools/src/storage/sqlite.rs, line 6](https://github.com/open-jarvis/OpenJarvis/blob/a4aa0271dd1479ef547d24cf69a62e0e8307d22c/rust/crates/openjarvis-tools/src/storage/sqlite.rs#L6)

### What does OpenJarvis sign people in with?

OpenJarvis signs people in with ed25519-dalek and keyring.

### Does OpenJarvis use AI?

Yes. OpenJarvis uses AI through datasets, OpenAI, and Anthropic.

### What services does OpenJarvis use?

OpenJarvis measures its use with PostHog and uses rusqlite.

The proof: [frontend/src/lib/analytics.ts, line 20](https://github.com/open-jarvis/OpenJarvis/blob/a4aa0271dd1479ef547d24cf69a62e0e8307d22c/frontend/src/lib/analytics.ts#L20)

### Does OpenJarvis have tests?

Yes. OpenJarvis has 759 test files and is tested with Vitest.

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

The ones that share most of its stack: unslothai/unsloth, Significant-Gravitas/AutoGPT, and cline/cline.

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