What is theia built with?

theia is a TypeScript repo built with Electron, React, Express, and vhost. It stores its data in electron-store, signs people in with keytar, uses AI through Anthropic, OpenAI, @openai/codex-sdk, and ollama, makes its content with mustache, js-yaml, dompurify, markdown-it, markdown-it-anchor, and 3 more, validates its data with Zod and Ajv, is tested with Chai, sinon, Puppeteer, Mocha, jsdom, and 1 more, deploys with prom-client, and uses Hugging Face, MCP, and idb. It has 648,258 written lines, with 773 test files.

Read on November 5, 2026, at commit 30a5482. Read it as markdown

Frontend

Interface 7

  • lumino29 files
  • xterm7 files
  • Mermaid1 file
  • react-tooltip1 file
  • xterm-addon-fit1 file
  • react-virtuoso3 files
  • react-textarea-autosize2 files

The base 1

Icons 2

  • Font Awesome1 file
  • @vscode/codicons1 file

Backend

Support

Testing 6

  • Chai546 files
  • sinon74 files
  • Puppeteer3 files
  • jsdom1 file
  • Mocha1 file
  • chai-string2 files

Tools 18

  • yargs7 files
  • ESLint5 files
  • glob4 files
  • TypeScript2 files
  • @electron/get1 file
  • @typescript-eslint/parser1 file
  • esbuild1 file
  • vscode-languageserver-protocol9 files
  • vscode-textmate7 files
  • @parcel/watcher3 files
  • @vscode/ripgrep3 files
  • ignore2 files
6 more
  • vscode-languageserver-textdocument2 files
  • detect-libc1 file
  • log-update1 file
  • rimraf1 file
  • simple-git1 file
  • vscode-oniguruma1 file

The base 2

Content 8

  • markdown-it3 files
  • markdown-it-emoji2 files
  • pdfobject1 file
  • js-yaml4 files
  • dompurify2 files
  • markdown-it-anchor2 files
  • escape-html1 file
  • mustache1 file

Validation 2

Deploy 1

  • prom-client1 file

Other 54

  • inversify268 files
  • @lumino/messaging8 files
  • SemVer6 files
  • Socket.io5 files
  • chalk4 files
  • Lodash3 files
  • socket.io-client3 files
  • undici3 files
  • lodash.throttle2 files
  • yjs2 files
  • archiver1 file
  • uuid1 file
42 more
  • reflect-metadata30 files
  • temp19 files
  • fs-extra17 files
  • jsonc-parser15 files
  • p-debounce15 files
  • long9 files
  • minimatch9 files
  • async-mutex8 files
  • vscode-uri7 files
  • limiter5 files
  • node-pty3 files
  • ssh-config3 files
  • ts-md53 files
  • cookie2 files
  • deepmerge2 files
  • fast-deep-equal2 files
  • fast-json-stable-stringify2 files
  • fuzzy2 files
  • iconv-lite2 files
  • msgpackr2 files
  • ssh22 files
  • ws2 files
  • anser1 file
  • body-parser1 file
  • debug1 file
  • diff1 file
  • escape-string-regexp1 file
  • fix-path1 file
  • http-status-codes1 file
  • js-levenshtein1 file
  • jschardet1 file
  • lib01 file
  • luxon1 file
  • mime1 file
  • mime-types1 file
  • multer1 file
  • p-queue1 file
  • ssh2-sftp-client1 file
  • string-argv1 file
  • tar-stream1 file
  • unzipper1 file
  • y-protocols1 file

Other repos with a similar stack

Ordered by how much of its stack they share with theia, then by stars.

Frequently asked questions

What language is theia written in?
theia is written in TypeScript, with 648,258 written lines.
What framework does theia use?
theia is built with Electron, React, Express, and vhost.
What database does theia use?
theia stores its data in electron-store.
What does theia sign people in with?
theia signs people in with keytar.
Does theia use AI?
Yes. theia uses AI through Anthropic, OpenAI, @openai/codex-sdk, and ollama.

The proof: packages/ai-anthropic/src/node/anthropic-language-model.ts, line 42

What services does theia use?
theia uses Hugging Face, MCP, and idb.

The proof: packages/ai-hugging-face/src/node/huggingface-language-model.ts, line 28

Does theia have tests?
Yes. theia has 773 test files and is tested with Chai, sinon, Puppeteer, Mocha, jsdom, and chai-string.
Which repos have a stack like theia's?
The ones that share most of its stack:paperclipai/paperclipcline/clineruvnet/ruflo

See inside your code, today.

Paste your repo and see it drawn, part by part: a medium one in under a minute.

Free, no account.

Or look inside SeeRepo's own →

Is it your repo? Add its badge, keep it up to date or take it down →