Source: https://seerepo.com/r/blinkospace/blinko/built
Markdown source: https://seerepo.com/r/blinkospace/blinko/built.md
Description: blinko is a TypeScript repo built with Tokio, Vite, React, react-router-dom, @tauri-apps/api, and 4 more. It reaches its data with Prisma.

# What is blinko built with?

blinko is a TypeScript repo built with Tokio, Vite, React, react-router-dom, @tauri-apps/api, and 4 more. It reaches its data with Prisma, signs people in with jsonwebtoken, otplib, Passport, passport-apple, passport-discord, and 6 more, stores files in AWS S3, uses AI through mastra, ai, @tavily/core, ai-sdk, LangChain, and 4 more, makes its content with react-markdown, rehype-raw, katex, markmap-lib, qrcode.react, and 7 more, validates its data with Zod, deploys with tauri-apps and @mastra/loggers, and uses Postgres, lru-cache, @mastra/libsql, aws-sdk, SQLite, and 1 more. It has 66,136 written lines, with 27 test files.

Read on November 12, 2026, at commit a1c71e6.

Repository: https://github.com/blinkospace/blinko

## Backend (/)

### Data

- **[Postgres](https://seerepo.com/uses/postgres)**: 1 file · [server/lib/pgBoss.ts, line 1](https://github.com/blinkospace/blinko/blob/a1c71e67f653f88aabee93c6e5dc433ef5780d18/server/lib/pgBoss.ts#L1)

## Support (/)

### Tools

- **ncp**: 1 file

## Frontend (app)

### The base

- **[Tokio](https://seerepo.com/uses/tokio)**
- **[Vite](https://seerepo.com/uses/vite)**: [in app/package.json](https://github.com/blinkospace/blinko/blob/a1c71e67f653f88aabee93c6e5dc433ef5780d18/app/package.json)
- **[React](https://seerepo.com/uses/react)**: 140 files · [in app/package.json](https://github.com/blinkospace/blinko/blob/a1c71e67f653f88aabee93c6e5dc433ef5780d18/app/package.json)
- **[react-router-dom](https://seerepo.com/uses/react-router-dom)**: 31 files
- **[@tauri-apps/api](https://seerepo.com/uses/tauri-apps-api)**: 9 files
- **[Tauri](https://seerepo.com/uses/tauri)**: 7 files

### Styles

- **[Tailwind CSS](https://seerepo.com/uses/tailwind-css)**
- **[next-themes](https://seerepo.com/uses/next-themes)**: 11 files
- **[tailwind-merge](https://seerepo.com/uses/tailwind-merge)**: 2 files
- **@heroui/theme**: 1 file

### Interface

- **[appcompat](https://seerepo.com/uses/appcompat)**
- **[Google](https://seerepo.com/uses/google)**
- **HeroUI**: 116 files
- **[usehooks-ts](https://seerepo.com/uses/usehooks-ts)**: 41 files
- **[Framer](https://seerepo.com/uses/framer)**: 16 files
- **[motion](https://seerepo.com/uses/motion)**: 8 files
- **react-photo-view**: 7 files
- **[echarts](https://seerepo.com/uses/echarts)**: 4 files
- **vditor**: 4 files
- **[react-dropzone](https://seerepo.com/uses/react-dropzone)**: 3 files
- **boring-avatars**: 2 files
- **[dnd-kit](https://seerepo.com/uses/dnd-kit)**: 2 files
- **react-masonry-css**: 2 files
- **[canvas-confetti](https://seerepo.com/uses/canvas-confetti)**: 1 file
- **emoji-picker-react**: 1 file
- **markmap-view**: 1 file
- **[Mermaid](https://seerepo.com/uses/mermaid)**: 1 file
- **react-accessible-treeview**: 1 file
- **react-burger-menu**: 1 file
- **[react-hot-toast](https://seerepo.com/uses/react-hot-toast)**: 1 file
- **[react-syntax-highlighter](https://seerepo.com/uses/react-syntax-highlighter)**: 1 file
- **react-webcam**: 1 file
- **[Swiper](https://seerepo.com/uses/swiper)**: 1 file
- **[tauri-plugin-dialog](https://seerepo.com/uses/tauri-plugin-dialog)**: 1 file

### Icons

- **[Iconify](https://seerepo.com/uses/iconify)**: 3 files
- **@lobehub/icons**: 1 file

## Backend (app)

### Data

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

## Support (app)

### Content

- **[react-markdown](https://seerepo.com/uses/react-markdown)**: 3 files
- **[rehype-raw](https://seerepo.com/uses/rehype-raw)**: 2 files
- **[katex](https://seerepo.com/uses/katex)**: 1 file
- **markmap-lib**: 1 file
- **[qrcode.react](https://seerepo.com/uses/qrcodereact)**: 1 file
- **[rehype-katex](https://seerepo.com/uses/rehype-katex)**: 1 file
- **[remark-gfm](https://seerepo.com/uses/remark-gfm)**: 1 file
- **[remark-math](https://seerepo.com/uses/remark-math)**: 1 file

### Validation

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

### Deploy

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

### Tools

- **gradle**
- **react-dev-inspector**: 1 file

### Other

- **enigo**
- **rdev**
- **sys-locale**
- **webkit**
- **mobx-react-lite**: 110 files
- **react-i18next**: 109 files
- **MobX**: 21 files
- **dayjs**: 6 files
- **Axios**: 5 files
- **@internationalized/date**: 4 files
- **copy-to-clipboard**: 4 files
- **tauri-plugin-global-shortcut**: 4 files
- **serde**: 3 files
- **[tauri-apps](https://seerepo.com/uses/tauri-apps)**: 3 files
- **clsx**: 2 files
- **i18next**: 2 files
- **Lodash**: 2 files
- **systemjs**: 2 files
- **arboard**: 1 file
- **filesize**: 1 file
- **i18next-browser-languagedetector**: 1 file
- **i18next-http-backend**: 1 file
- **serde_json**: 1 file
- **superjson**: 1 file
- **tauri-plugin-autostart**: 1 file
- **tauri-plugin-fs**: 1 file
- **tauri-plugin-http**: 1 file
- **tauri-plugin-opener**: 1 file
- **tauri-plugin-os**: 1 file
- **tauri-plugin-process**: 1 file
- **tauri-plugin-single-instance**: 1 file
- **tauri-plugin-updater**: 1 file
- **tauri-plugin-upload**: 1 file
- **[tRPC](https://seerepo.com/uses/trpc)**: 1 file

## Frontend (app/tauri-plugin-blinko)

### The base

- **[Tauri](https://seerepo.com/uses/tauri)**: 5 files

### Interface

- **[appcompat](https://seerepo.com/uses/appcompat)**
- **[Google](https://seerepo.com/uses/google)**

## Support (app/tauri-plugin-blinko)

### The base

- **[core-ktx](https://seerepo.com/uses/core-ktx)**
- **[@tauri-apps/api](https://seerepo.com/uses/tauri-apps-api)**: 3 files

### Other

- **serde**: 4 files
- **thiserror**: 1 file

## Frontend (server)

### Interface

- **swagger-ui-express**: 1 file

## Backend (server)

### The base

- **[Express](https://seerepo.com/uses/express)**: 13 files · [in server/package.json](https://github.com/blinkospace/blinko/blob/a1c71e67f653f88aabee93c6e5dc433ef5780d18/server/package.json)

### Data

- **@mastra/libsql**: 3 files
- **[aws-sdk](https://seerepo.com/uses/aws-sdk)**: 2 files
- **[Postgres](https://seerepo.com/uses/postgres)**: 1 file · [server/lib/pgBoss.ts, line 1](https://github.com/blinkospace/blinko/blob/a1c71e67f653f88aabee93c6e5dc433ef5780d18/server/lib/pgBoss.ts#L1)
- **[SQLite](https://seerepo.com/uses/sqlite)**: 1 file · [server/jobs/memosJob.ts, line 1](https://github.com/blinkospace/blinko/blob/a1c71e67f653f88aabee93c6e5dc433ef5780d18/server/jobs/memosJob.ts#L1)

### Sign-in

- **[jsonwebtoken](https://seerepo.com/uses/jsonwebtoken)**: 4 files
- **[otplib](https://seerepo.com/uses/otplib)**: 2 files
- **[Passport](https://seerepo.com/uses/passport)**: 1 file
- **passport-apple**: 1 file
- **passport-discord**: 1 file
- **passport-facebook**: 1 file
- **passport-github2**: 1 file
- **passport-google-oauth20**: 1 file
- **[passport-jwt](https://seerepo.com/uses/passport-jwt)**: 1 file
- **[passport-local](https://seerepo.com/uses/passport-local)**: 1 file
- **passport-oauth2**: 1 file

### AI

- **mastra**: 14 files
- **[ai](https://seerepo.com/uses/ai)**: 3 files
- **@tavily/core**: 2 files
- **[ai-sdk](https://seerepo.com/uses/ai-sdk)**: 2 files
- **[LangChain](https://seerepo.com/uses/langchain)**: 1 file
- **[OpenRouter](https://seerepo.com/uses/openrouter)**: 1 file
- **voyage-ai-provider**: 1 file

### Services

- **[OpenAI](https://seerepo.com/uses/openai)**: 3 files · [server/aiServer/providers/AudioProvider.ts, line 5](https://github.com/blinkospace/blinko/blob/a1c71e67f653f88aabee93c6e5dc433ef5780d18/server/aiServer/providers/AudioProvider.ts#L5)
- **[AWS S3](https://seerepo.com/uses/aws-s3)**: 2 files · [server/jobs/dbjob.ts, line 20](https://github.com/blinkospace/blinko/blob/a1c71e67f653f88aabee93c6e5dc433ef5780d18/server/jobs/dbjob.ts#L20)
- **[MCP](https://seerepo.com/uses/mcp)**: 2 files · [server/aiServer/mcp/McpClientManager.ts, line 2](https://github.com/blinkospace/blinko/blob/a1c71e67f653f88aabee93c6e5dc433ef5780d18/server/aiServer/mcp/McpClientManager.ts#L2)
- **[Anthropic](https://seerepo.com/uses/anthropic)**: 1 file · [server/aiServer/providers/LLMProvider.ts, line 3](https://github.com/blinkospace/blinko/blob/a1c71e67f653f88aabee93c6e5dc433ef5780d18/server/aiServer/providers/LLMProvider.ts#L3)

## Support (server)

### The base

- **[tRPC](https://seerepo.com/uses/trpc)**: 12 files

### Content

- **[sharp](https://seerepo.com/uses/sharp)**: 3 files
- **[sanitize-filename](https://seerepo.com/uses/sanitize-filename)**: 2 files
- **feed**: 1 file
- **[music-metadata](https://seerepo.com/uses/music-metadata)**: 1 file

### Validation

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

### Deploy

- **@mastra/loggers**: 1 file

### Tools

- **trpc-to-openapi**: 3 files
- **swagger-jsdoc**: 1 file

### Other

- **Axios**: 6 files
- **path-is-inside**: 4 files
- **cors**: 3 files
- **adm-zip**: 2 files
- **superjson**: 2 files
- **yauzl-promise**: 2 files
- **@trpc/client**: 1 file
- **archiver**: 1 file
- **bowser**: 1 file
- **busboy**: 1 file
- **dayjs**: 1 file
- **undici**: 1 file
- **unfurl.js**: 1 file

## Backend (shared)

### Data

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

### Data access

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

## Support (shared)

### Validation

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

### Other

- **dayjs**: 1 file
- **Lodash**: 1 file

## Other repos with a similar stack

- [CherryHQ/cherry-studio](https://seerepo.com/r/CherryHQ/cherry-studio/built): Vite, React, lru-cache, SQLite, OpenAI, MCP, Anthropic, Tailwind CSS, tailwind-merge, motion, echarts, react-dropzone, dnd-kit, emoji-picker-react, Iconify, katex, qrcode.react, remark-gfm, remark-math, Zod, ai, ai-sdk, OpenRouter, voyage-ai-provider, sharp · [Compare](https://seerepo.com/compare/blinkospace/blinko/vs/CherryHQ/cherry-studio)
- [twentyhq/twenty](https://seerepo.com/r/twentyhq/twenty/built): Postgres, Vite, React, react-router-dom, Express, aws-sdk, OpenAI, AWS S3, MCP, Anthropic, Google, Framer, react-dropzone, react-markdown, remark-gfm, Zod, jsonwebtoken, otplib, Passport, passport-google-oauth20, passport-jwt, ai, ai-sdk, sharp · [Compare](https://seerepo.com/compare/blinkospace/blinko/vs/twentyhq/twenty)
- [paperclipai/paperclip](https://seerepo.com/r/paperclipai/paperclip/built): Postgres, Tokio, Vite, React, react-router-dom, Express, OpenAI, AWS S3, MCP, Anthropic, Tailwind CSS, tailwind-merge, Google, motion, dnd-kit, Mermaid, react-markdown, remark-gfm, Zod, ai, ai-sdk, OpenRouter, sharp · [Compare](https://seerepo.com/compare/blinkospace/blinko/vs/paperclipai/paperclip)
- [Significant-Gravitas/AutoGPT](https://seerepo.com/r/Significant-Gravitas/AutoGPT/built): Postgres, React, OpenAI, Anthropic, Tailwind CSS, next-themes, tailwind-merge, Google, Framer, motion, boring-avatars, canvas-confetti, react-markdown, katex, rehype-katex, remark-gfm, remark-math, Zod, ai · [Compare](https://seerepo.com/compare/blinkospace/blinko/vs/Significant-Gravitas/AutoGPT)
- [infiniflow/ragflow](https://seerepo.com/r/infiniflow/ragflow/built): Postgres, React, OpenAI, AWS S3, MCP, Tailwind CSS, next-themes, tailwind-merge, Google, react-photo-view, react-dropzone, Mermaid, react-syntax-highlighter, react-markdown, rehype-raw, rehype-katex, remark-gfm, remark-math, Zod · [Compare](https://seerepo.com/compare/blinkospace/blinko/vs/infiniflow/ragflow)
- [supabase/supabase](https://seerepo.com/r/supabase/supabase/built): Vite, React, OpenAI, MCP, Tailwind CSS, next-themes, motion, react-dropzone, dnd-kit, Mermaid, react-accessible-treeview, react-syntax-highlighter, Swiper, react-markdown, remark-gfm, Zod, ai, ai-sdk · [Compare](https://seerepo.com/compare/blinkospace/blinko/vs/supabase/supabase)

## Frequently asked questions

### What language is blinko written in?

blinko is written in TypeScript, with 66,136 written lines.

### What framework does blinko use?

blinko is built with Tokio, Vite, React, react-router-dom, @tauri-apps/api, Tauri, core-ktx, Express, and tRPC.

### What does blinko sign people in with?

blinko signs people in with jsonwebtoken, otplib, Passport, passport-apple, passport-discord, passport-facebook, passport-github2, passport-google-oauth20, passport-jwt, passport-local, and passport-oauth2.

### Does blinko use AI?

Yes. blinko uses AI through mastra, ai, @tavily/core, ai-sdk, LangChain, OpenRouter, voyage-ai-provider, OpenAI, and Anthropic.

### What services does blinko use?

blinko stores files in AWS S3 and uses Postgres, lru-cache, @mastra/libsql, aws-sdk, SQLite, and MCP.

The proof: [server/jobs/dbjob.ts, line 20](https://github.com/blinkospace/blinko/blob/a1c71e67f653f88aabee93c6e5dc433ef5780d18/server/jobs/dbjob.ts#L20)

### Does blinko have tests?

Yes. blinko has 27 test files.

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

The ones that share most of its stack: CherryHQ/cherry-studio, twentyhq/twenty, and paperclipai/paperclip.

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