Source: https://seerepo.com/r/fluxerapp/fluxer/built
Markdown source: https://seerepo.com/r/fluxerapp/fluxer/built.md
Description: fluxer is a TypeScript repo built with axum, Tokio, Caddy, tower, tower-layer, and 6 more. It stores its data in Postgres, Elastic, and SQLite.

# What is fluxer built with?

fluxer is a TypeScript repo built with axum, Tokio, Caddy, tower, tower-layer, and 6 more. It stores its data in Postgres, Elastic, and SQLite, signs people in with hmac, jose, @simplewebauthn/server, argon2, @simplewebauthn/browser, and 1 more, takes payments with Stripe, stores files in AWS S3, uses AI through onnxruntime-web, makes its content with scraper, ammonia, html5ever, infer, linkify, and 11 more, validates its data with Zod, valibot, @redocly/openapi-core, and validator, is tested with libfuzzer-sys, Vitest, msw, pdf-lib, and yaml, deploys with tracing, github.com/compose-spec/compose-go/v2, github.com/moby/moby/client, github.com/moby/moby/api, tracing-subscriber, and 3 more, and uses deadpool-postgres, tokio-postgres, tokio-postgres-rustls, moka, scylla, and 9 more. It has 1,455,270 written lines, with 836 test files.

Read on November 13, 2026, at commit 851e55c.

Repository: https://github.com/fluxerapp/fluxer

## Frontend (/)

### Styles

- **[charm.land/lipgloss/v2](https://seerepo.com/uses/charmland-lipgloss-v2)**: 5 files

### Interface

- **charm.land/fang/v2**: 2 files
- **charm.land/huh/v2**: 2 files

## Backend (/)

### The base

- **[axum](https://seerepo.com/uses/axum)**: 48 files

### Data

- **deadpool-postgres**
- **[tokio-postgres](https://seerepo.com/uses/tokio-postgres)**
- **tokio-postgres-rustls**
- **[moka](https://seerepo.com/uses/moka)**: 10 files
- **scylla**: 5 files
- **[Postgres](https://seerepo.com/uses/postgres)**: 2 files · [fluxer_svc/src/postgres.rs, line 6](https://github.com/fluxerapp/fluxer/blob/851e55c70f9b62d5c168dac9f09c071306a20752/fluxer_svc/src/postgres.rs#L6)
- **async-nats**: 1 file
- **[NATS.io](https://seerepo.com/uses/natsio)**: 1 file

### Sign-in

- **[hmac](https://seerepo.com/uses/hmac)**: 6 files

## Support (/)

### The base

- **[Tokio](https://seerepo.com/uses/tokio)**: 73 files
- **Caddy**: 1 file
- **[tower](https://seerepo.com/uses/tower)**: 1 file
- **tower-layer**: 1 file

### Content

- **scraper**: 4 files
- **ammonia**: 1 file
- **[html5ever](https://seerepo.com/uses/html5ever)**: 1 file
- **[infer](https://seerepo.com/uses/infer)**: 1 file
- **linkify**: 1 file

### Testing

- **libfuzzer-sys**

### Deploy

- **[tracing](https://seerepo.com/uses/tracing)**: 62 files
- **github.com/compose-spec/compose-go/v2**: 9 files
- **[github.com/moby/moby/client](https://seerepo.com/uses/githubcom-moby-moby-client)**: 8 files
- **[github.com/moby/moby/api](https://seerepo.com/uses/githubcom-moby-moby-api)**: 5 files
- **[tracing-subscriber](https://seerepo.com/uses/tracing-subscriber)**: 4 files
- **[github.com/sirupsen/logrus](https://seerepo.com/uses/githubcom-sirupsen-logrus)**: 1 file

### Tools

- **github.com/spf13/cobra**: 38 files
- **clap**: 5 files
- **[Docker](https://seerepo.com/uses/docker)**: 2 files

### Other

- **runtime**
- **anyhow**: 88 files
- **serde_json**: 61 files
- **reqwest**: 44 files
- **url**: 37 files
- **serde**: 36 files
- **thiserror**: 26 files
- **bytes**: 24 files
- **base64**: 22 files
- **libc**: 22 files
- **sha2**: 18 files
- **tokio-util**: 14 files
- **golang.org/x/sys**: 12 files
- **futures-util**: 11 files
- **http**: 11 files
- **hex**: 10 files
- **rand**: 9 files
- **chrono**: 8 files
- **go.yaml.in/yaml/v4**: 8 files
- **github.com/charmbracelet/x/ansi**: 7 files
- **ring**: 7 files
- **futures**: 6 files
- **[containerd](https://seerepo.com/uses/containerd)**: 5 files
- **golang.org/x/term**: 5 files
- **tempfile**: 5 files
- **urlencoding**: 5 files
- **github.com/distribution/reference**: 4 files
- **github.com/klauspost/compress**: 4 files
- **parking_lot**: 4 files
- **regex**: 4 files
- **http-body**: 3 files
- **http-body-util**: 3 files
- **percent-encoding**: 3 files
- **reqwest-middleware**: 3 files
- **rmp-serde**: 3 files
- **async-trait**: 2 files
- **github.com/spf13/pflag**: 2 files
- **Hyper**: 2 files
- **memmap2**: 2 files
- **reqwest-retry**: 2 files
- **rustler**: 2 files
- **rustls**: 2 files
- **tower-http**: 2 files
- **tower-service**: 2 files
- **ciborium**: 1 file
- **encoding_rs**: 1 file
- **github.com/charmbracelet/colorprofile**: 1 file
- **github.com/pion/webrtc/v4**: 1 file
- **golang.org/x/net**: 1 file
- **google.golang.org/protobuf**: 1 file
- **hickory-resolver**: 1 file
- **hyper-util**: 1 file
- **mime_guess**: 1 file
- **p256**: 1 file
- **rand_chacha**: 1 file
- **x509-cert**: 1 file

## Frontend (fluxer_admin)

### Styles

- **[Tailwind CSS](https://seerepo.com/uses/tailwind-css)**

## Backend (fluxer_admin)

### The base

- **[axum](https://seerepo.com/uses/axum)**: 37 files

### Sign-in

- **[hmac](https://seerepo.com/uses/hmac)**: 3 files

## Support (fluxer_admin)

### The base

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

### Content

- **maud**: 111 files

### Deploy

- **[tracing](https://seerepo.com/uses/tracing)**: 33 files
- **[tracing-subscriber](https://seerepo.com/uses/tracing-subscriber)**: 1 file

### Other

- **regress**
- **serde**: 52 files
- **serde_json**: 41 files
- **urlencoding**: 31 files
- **reqwest**: 20 files
- **base64**: 8 files
- **time**: 8 files
- **url**: 8 files
- **anyhow**: 7 files
- **chrono**: 6 files
- **sha2**: 4 files
- **progenitor-client**: 2 files
- **rand**: 2 files
- **tokio-util**: 1 file
- **tower-http**: 1 file

## Backend (fluxer_api)

### The base

- **[Hono](https://seerepo.com/uses/hono)**: 80 files · [in fluxer_api/package.json](https://github.com/fluxerapp/fluxer/blob/851e55c70f9b62d5c168dac9f09c071306a20752/fluxer_api/package.json)

### Data

- **@nats-io/transport-node**: 5 files
- **cassandra-driver**: 2 files
- **[aws-sdk](https://seerepo.com/uses/aws-sdk)**: 1 file
- **[Redis](https://seerepo.com/uses/redis)**: 1 file · [fluxer_api/pkgs/kv_client/src/KVClient.ts, line 28](https://github.com/fluxerapp/fluxer/blob/851e55c70f9b62d5c168dac9f09c071306a20752/fluxer_api/pkgs/kv_client/src/KVClient.ts#L28)

### Sign-in

- **[jose](https://seerepo.com/uses/jose)**: 9 files
- **[@simplewebauthn/server](https://seerepo.com/uses/simplewebauthn-server)**: 5 files
- **[argon2](https://seerepo.com/uses/argon2)**: 1 file

### Services

- **[Stripe](https://seerepo.com/uses/stripe)**: 5 files · [fluxer_api/src/api/stripe/StripeClient.ts, line 10](https://github.com/fluxerapp/fluxer/blob/851e55c70f9b62d5c168dac9f09c071306a20752/fluxer_api/src/api/stripe/StripeClient.ts#L10)
- **LiveKit**: 4 files · [fluxer_api/src/api/infrastructure/LiveKitWebhookService.ts, line 16](https://github.com/fluxerapp/fluxer/blob/851e55c70f9b62d5c168dac9f09c071306a20752/fluxer_api/src/api/infrastructure/LiveKitWebhookService.ts#L16)
- **[AWS S3](https://seerepo.com/uses/aws-s3)**: 1 file · [fluxer_api/src/api/infrastructure/IStorageService.ts, line 4](https://github.com/fluxerapp/fluxer/blob/851e55c70f9b62d5c168dac9f09c071306a20752/fluxer_api/src/api/infrastructure/IStorageService.ts#L4)

## Support (fluxer_api)

### Content

- **[sharp](https://seerepo.com/uses/sharp)**: 5 files
- **[html-entities](https://seerepo.com/uses/html-entities)**: 1 file

### Validation

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

### Testing

- **Vitest**: 617 files
- **msw**: 31 files
- **[pdf-lib](https://seerepo.com/uses/pdf-lib)**: 2 files

### Deploy

- **[@hono/node-server](https://seerepo.com/uses/hono-node-server)**: 3 files

### Tools

- **tempy**: 2 files

### Other

- **uint8array-extras**: 4 files
- **tldts**: 2 files
- **transliteration**: 2 files
- **@bufbuild/protobuf**: 1 file
- **@fastify/busboy**: 1 file
- **@messageformat/core**: 1 file
- **archiver**: 1 file
- **bowser**: 1 file
- **fflate**: 1 file
- **hi-base32**: 1 file
- **mime**: 1 file

## Support (fluxer_api/pkgs/cache)

### Testing

- **Vitest**: 2 files

## Support (fluxer_api/pkgs/captcha)

### Validation

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

## Backend (fluxer_api/pkgs/cassandra)

### Data

- **cassandra-driver**: 1 file

## Backend (fluxer_api/pkgs/elasticsearch_search)

### Data

- **[Elastic](https://seerepo.com/uses/elastic)**: 9 files · [fluxer_api/pkgs/elasticsearch_search/src/ElasticsearchClient.ts, line 3](https://github.com/fluxerapp/fluxer/blob/851e55c70f9b62d5c168dac9f09c071306a20752/fluxer_api/pkgs/elasticsearch_search/src/ElasticsearchClient.ts#L3)

## Frontend (fluxer_api/pkgs/email)

### Styles

- **harfbuzzjs**: 1 file

## Support (fluxer_api/pkgs/email)

### Content

- **[pdf-lib](https://seerepo.com/uses/pdf-lib)**: 4 files
- **[nodemailer](https://seerepo.com/uses/nodemailer)**: 1 file

### Testing

- **Vitest**: 8 files

### Other

- **bidi-js**: 1 file

## Support (fluxer_api/pkgs/geoip)

### Other

- **maxmind**: 1 file

## Support (fluxer_api/pkgs/http_client)

### Testing

- **Vitest**: 1 file

### Other

- **undici**: 1 file

## Backend (fluxer_api/pkgs/kv_client)

### Data

- **[Postgres](https://seerepo.com/uses/postgres)**: 3 files · [fluxer_svc/src/postgres.rs, line 6](https://github.com/fluxerapp/fluxer/blob/851e55c70f9b62d5c168dac9f09c071306a20752/fluxer_svc/src/postgres.rs#L6)
- **[Redis](https://seerepo.com/uses/redis)**: 2 files · [fluxer_api/pkgs/kv_client/src/KVClient.ts, line 28](https://github.com/fluxerapp/fluxer/blob/851e55c70f9b62d5c168dac9f09c071306a20752/fluxer_api/pkgs/kv_client/src/KVClient.ts#L28)

## Support (fluxer_api/pkgs/kv_client)

### Testing

- **Vitest**: 3 files

## Support (fluxer_api/pkgs/media_proxy_utils)

### Testing

- **Vitest**: 1 file

## Support (fluxer_api/pkgs/mime_utils)

### Other

- **mime**: 1 file

## Backend (fluxer_api/pkgs/nats)

### Data

- **@nats-io/transport-node**: 2 files

## Backend (fluxer_api/pkgs/postgres)

### Data

- **[Postgres](https://seerepo.com/uses/postgres)**: 1 file · [fluxer_svc/src/postgres.rs, line 6](https://github.com/fluxerapp/fluxer/blob/851e55c70f9b62d5c168dac9f09c071306a20752/fluxer_svc/src/postgres.rs#L6)

## Support (fluxer_api/pkgs/rate_limit)

### Testing

- **Vitest**: 1 file

## Frontend (fluxer_app)

### The base

- **[React](https://seerepo.com/uses/react)**: 1,516 files

### Styles

- **@csstools/css-tokenizer**: 1 file

### Interface

- **[React Hook Form](https://seerepo.com/uses/react-hook-form)**: 72 files
- **[Framer](https://seerepo.com/uses/framer)**: 71 files
- **[lexical](https://seerepo.com/uses/lexical)**: 43 files
- **LiveKit**: 22 files
- **floating-ui**: 20 files
- **[react-dnd](https://seerepo.com/uses/react-dnd)**: 17 files
- **[Base UI](https://seerepo.com/uses/base-ui)**: 15 files
- **[CodeMirror](https://seerepo.com/uses/codemirror)**: 15 files
- **[react-dnd-html5-backend](https://seerepo.com/uses/react-dnd-html5-backend)**: 9 files
- **[react-aria-components](https://seerepo.com/uses/react-aria-components)**: 5 files
- **Anime.js**: 4 files
- **[Radix UI](https://seerepo.com/uses/radix-ui)**: 3 files
- **[@lezer/highlight](https://seerepo.com/uses/lezer-highlight)**: 1 file
- **favico.js**: 1 file
- **[react-day-picker](https://seerepo.com/uses/react-day-picker)**: 1 file
- **react-dnd-multi-backend**: 1 file
- **[react-hotkeys-hook](https://seerepo.com/uses/react-hotkeys-hook)**: 1 file
- **[TanStack](https://seerepo.com/uses/tanstack)**: 1 file
- **[three](https://seerepo.com/uses/three)**: 1 file

### Icons

- **[@phosphor-icons/react](https://seerepo.com/uses/phosphor-icons-react)**: 474 files

## Backend (fluxer_app)

### Data

- **[lru-cache](https://seerepo.com/uses/lru-cache)**: 5 files

### Sign-in

- **[@simplewebauthn/browser](https://seerepo.com/uses/simplewebauthn-browser)**: 10 files

### AI

- **onnxruntime-web**: 2 files

## Support (fluxer_app)

### Content

- **[qrcode](https://seerepo.com/uses/qrcode)**: 2 files
- **gifenc**: 1 file
- **gifuct-js**: 1 file
- **[katex](https://seerepo.com/uses/katex)**: 1 file
- **libwebp-sys**: 1 file
- **[pdf-lib](https://seerepo.com/uses/pdf-lib)**: 1 file
- **thumbhash**: 1 file
- **upng-js**: 1 file

### Validation

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

### Tools

- **Babel**: 1 file
- **Prettier**: 1 file

### Other

- **lingui**: 1,368 files
- **mobx-react-lite**: 975 files
- **clsx**: 382 files
- **MobX**: 292 files
- **XState**: 45 files
- **match-sorter**: 15 files
- **Lodash**: 13 files
- **@bufbuild/protobuf**: 6 files
- **noble**: 5 files
- **tiny-invariant**: 5 files
- **luxon**: 4 files
- **eventemitter3**: 3 files
- **rxjs**: 3 files
- **bowser**: 2 files
- **wasm-bindgen**: 2 files
- **fflate**: 1 file
- **unique-names-generator**: 1 file
- **urlpattern-polyfill**: 1 file
- **zstd**: 1 file

## Backend (fluxer_app/pkgs/livekit-client)

### Sign-in

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

## Support (fluxer_app/pkgs/livekit-client)

### Tools

- **typed-emitter**: 14 files

### Other

- **LiveKit**: 37 files
- **events**: 16 files
- **@bufbuild/protobuf**: 1 file
- **loglevel**: 1 file
- **webrtc-adapter**: 1 file

## Backend (fluxer_desktop)

### Sign-in

- **[@simplewebauthn/browser](https://seerepo.com/uses/simplewebauthn-browser)**: 3 files

## Support (fluxer_desktop)

### The base

- **[Electron](https://seerepo.com/uses/electron)**: 73 files

### Other

- **franc-min**: 1 file
- **libc**: 1 file
- **undici**: 1 file
- **windows**: 1 file

## Backend (fluxer_desktop/native/app-store)

### Data

- **[rusqlite](https://seerepo.com/uses/rusqlite)**
- **[SQLite](https://seerepo.com/uses/sqlite)**: 5 files · [fluxer_desktop/native/app-store/src/model.rs, line 3](https://github.com/fluxerapp/fluxer/blob/851e55c70f9b62d5c168dac9f09c071306a20752/fluxer_desktop/native/app-store/src/model.rs#L3)

## Support (fluxer_desktop/native/app-store)

### Tools

- **napi-derive**: 1 file

### Other

- **napi**
- **serde**: 4 files
- **serde_json**: 3 files

## Support (fluxer_desktop/native/gateway-socket)

### The base

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

### Tools

- **napi-derive**: 1 file

### Other

- **napi**
- **futures-util**: 1 file
- **rustls**: 1 file
- **rustls-native-certs**: 1 file
- **schannel**: 1 file
- **tokio-tungstenite**: 1 file
- **url**: 1 file

## Support (fluxer_desktop/native/hardware-encoder)

### Tools

- **napi-derive**: 1 file

### Other

- **napi**
- **libloading**: 1 file

## Support (fluxer_desktop/native/linux-audio-capture)

### Tools

- **napi-derive**: 1 file

### Other

- **napi**
- **pipewire**: 6 files

## Support (fluxer_desktop/native/linux-evdev)

### Tools

- **napi-derive**: 2 files

### Other

- **napi**
- **polling**: 2 files
- **async-io**: 1 file
- **evdev**: 1 file
- **event-listener**: 1 file
- **futures-lite**: 1 file
- **nix**: 1 file
- **zbus**: 1 file

## Frontend (fluxer_desktop/native/linux-input-hook)

### Interface

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

## Support (fluxer_desktop/native/linux-input-hook)

### Tools

- **napi-derive**: 2 files

### Other

- **napi**

## Support (fluxer_desktop/native/linux-notifications)

### Tools

- **napi-derive**: 1 file

### Other

- **napi**
- **async-io**: 1 file
- **futures-lite**: 1 file
- **zbus**: 1 file

## Frontend (fluxer_desktop/native/linux-portals)

### Interface

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

## Support (fluxer_desktop/native/linux-portals)

### Tools

- **napi-derive**: 1 file

### Other

- **napi**
- **zbus**: 6 files
- **async-io**: 4 files
- **futures-lite**: 4 files
- **async-channel**: 2 files
- **async-executor**: 1 file

## Support (fluxer_desktop/native/mac-app-audio)

### The base

- **[objc2-foundation](https://seerepo.com/uses/objc2-foundation)**: 6 files
- **objc2-core-media**: 2 files

### Tools

- **napi-derive**: 2 files

### Other

- **napi**
- **objc2**: 4 files
- **objc2-screen-capture-kit**: 4 files
- **objc2-core-foundation**: 3 files
- **block2**: 2 files
- **dispatch2**: 1 file
- **libc**: 1 file
- **objc2-core-audio-types**: 1 file
- **objc2-core-graphics**: 1 file
- **parking_lot**: 1 file

## Support (fluxer_desktop/native/mac-clipboard)

### The base

- **[objc2-app-kit](https://seerepo.com/uses/objc2-app-kit)**: 1 file
- **[objc2-foundation](https://seerepo.com/uses/objc2-foundation)**: 1 file

### Tools

- **napi-derive**: 1 file

### Other

- **dispatch2**: 1 file
- **napi**: 1 file
- **objc2**: 1 file

## Support (fluxer_desktop/native/mac-screen-capture)

### The base

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

### Tools

- **napi-derive**: 2 files

### Other

- **napi**
- **block2**: 1 file
- **objc2**: 1 file
- **objc2-screen-capture-kit**: 1 file

## Support (fluxer_desktop/native/mac-sysctl)

### The base

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

### Tools

- **napi-derive**: 1 file

### Other

- **napi**

## Frontend (fluxer_desktop/native/mac-tcc)

### Interface

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

## Support (fluxer_desktop/native/mac-tcc)

### Tools

- **napi-derive**: 1 file

### Other

- **napi**
- **objc2-io-kit**: 1 file

## Frontend (fluxer_desktop/native/macos-input-hook)

### Interface

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

## Support (fluxer_desktop/native/macos-input-hook)

### Tools

- **napi-derive**: 2 files

### Other

- **napi**
- **core-foundation**: 2 files
- **objc2-core-graphics**: 1 file

## Frontend (fluxer_desktop/native/platform-info)

### Interface

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

## Support (fluxer_desktop/native/platform-info)

### The base

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

### Tools

- **napi-derive**: 1 file

### Other

- **napi**
- **objc2**: 1 file
- **windows**: 1 file

## Support (fluxer_desktop/native/system-hunspell)

### Tools

- **napi-derive**: 1 file

### Other

- **napi**

## Backend (fluxer_desktop/native/webauthn)

### Sign-in

- **objc2-authentication-services**: 1 file

## Support (fluxer_desktop/native/webauthn)

### The base

- **[objc2-app-kit](https://seerepo.com/uses/objc2-app-kit)**: 1 file
- **[objc2-foundation](https://seerepo.com/uses/objc2-foundation)**: 1 file

### Tools

- **napi-derive**: 1 file

### Other

- **napi**: 4 files
- **dispatch2**: 1 file
- **objc2**: 1 file
- **windows**: 1 file
- **windows-core**: 1 file

## Support (fluxer_desktop/native/win-clipboard)

### Tools

- **napi-derive**: 1 file

### Other

- **napi**: 1 file
- **windows-sys**: 1 file

## Support (fluxer_desktop/native/win-game-capture)

### Tools

- **napi-derive**: 1 file

### Other

- **napi**
- **windows**: 2 files

## Support (fluxer_desktop/native/win-process-loopback)

### Tools

- **napi-derive**: 1 file

### Other

- **windows-core**
- **napi**: 1 file
- **windows**: 1 file

## Support (fluxer_desktop/native/win-shell)

### Tools

- **napi-derive**: 1 file

### Other

- **napi**: 1 file
- **windows**: 1 file

## Support (fluxer_desktop/native/windows-input-hook)

### Tools

- **napi-derive**: 1 file

### Other

- **napi**: 1 file
- **windows**: 1 file

## Support (packages/config)

### Testing

- **Vitest**: 5 files
- **[yaml](https://seerepo.com/uses/yaml)**: 1 file

## Support (packages/constants)

### Testing

- **Vitest**: 12 files

## Support (packages/date_utils)

### Testing

- **Vitest**: 1 file

### Other

- **@vvo/tzdb**: 1 file

## Backend (packages/errors)

### The base

- **[Hono](https://seerepo.com/uses/hono)**: 5 files · [in fluxer_api/package.json](https://github.com/fluxerapp/fluxer/blob/851e55c70f9b62d5c168dac9f09c071306a20752/fluxer_api/package.json)

## Support (packages/errors)

### Testing

- **Vitest**: 3 files

## Backend (packages/hono)

### The base

- **[Hono](https://seerepo.com/uses/hono)**: 9 files · [in fluxer_api/package.json](https://github.com/fluxerapp/fluxer/blob/851e55c70f9b62d5c168dac9f09c071306a20752/fluxer_api/package.json)

## Support (packages/hono)

### Testing

- **Vitest**: 4 files

### Deploy

- **[@hono/node-server](https://seerepo.com/uses/hono-node-server)**: 2 files

## Support (packages/i18n)

### Testing

- **Vitest**: 2 files

### Other

- **messageformat**: 5 files

## Support (packages/ip_utils)

### Testing

- **Vitest**: 2 files

## Support (packages/limits)

### Testing

- **Vitest**: 3 files

## Support (packages/logger)

### Deploy

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

## Support (packages/number_utils)

### Testing

- **Vitest**: 1 file

## Support (packages/openapi)

### Validation

- **[Zod](https://seerepo.com/uses/zod)**: 7 files
- **@redocly/openapi-core**: 1 file

### Tools

- **ts-morph**: 2 files

## Backend (packages/schema)

### Sign-in

- **[@simplewebauthn/server](https://seerepo.com/uses/simplewebauthn-server)**: 1 file

## Support (packages/schema)

### Validation

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

### Testing

- **Vitest**: 20 files

### Other

- **@bufbuild/protobuf**: 4 files
- **emoji-regex**: 1 file
- **uint8array-extras**: 1 file

## Support (packages/snowflake)

### Testing

- **Vitest**: 1 file

## Support (packages/voice_engine_v2)

### Testing

- **Vitest**: 17 files

## Other repos with a similar stack

- [calcom/cal.diy](https://seerepo.com/r/calcom/cal.diy/built): Postgres, Redis, Stripe, React, lru-cache, Tailwind CSS, jose, sharp, Zod, nodemailer, React Hook Form, Framer, lexical, Base UI, Radix UI, react-day-picker, TanStack, qrcode · [Compare](https://seerepo.com/compare/calcom/cal.diy/vs/fluxerapp/fluxer)
- [BerriAI/litellm](https://seerepo.com/r/BerriAI/litellm/built): axum, moka, Postgres, Tokio, tower, Redis, AWS S3, React, rusqlite, SQLite, tracing, tracing-subscriber, Tailwind CSS, Zod, React Hook Form, Base UI, react-hotkeys-hook · [Compare](https://seerepo.com/compare/BerriAI/litellm/vs/fluxerapp/fluxer)
- [zed-industries/zed](https://seerepo.com/r/zed-industries/zed/built): axum, moka, Postgres, Tokio, tower, AWS S3, objc2-foundation, objc2-core-media, objc2-app-kit, html5ever, linkify, tracing, tracing-subscriber, x11rb, core-graphics, objc2-metal · [Compare](https://seerepo.com/compare/fluxerapp/fluxer/vs/zed-industries/zed)
- [ruvnet/ruflo](https://seerepo.com/r/ruvnet/ruflo/built): Postgres, Tokio, Hono, React, SQLite, hmac, tracing, Tailwind CSS, jose, sharp, Zod, React Hook Form, Radix UI, react-day-picker, katex, pino · [Compare](https://seerepo.com/compare/fluxerapp/fluxer/vs/ruvnet/ruflo)
- [TryGhost/Ghost](https://seerepo.com/r/TryGhost/Ghost/built): Hono, Stripe, React, lru-cache, Tailwind CSS, jose, sharp, Zod, nodemailer, React Hook Form, lexical, CodeMirror, Radix UI, @lezer/highlight, react-day-picker, validator · [Compare](https://seerepo.com/compare/fluxerapp/fluxer/vs/TryGhost/Ghost)
- [CherryHQ/cherry-studio](https://seerepo.com/r/CherryHQ/cherry-studio/built): React, lru-cache, Electron, SQLite, Tailwind CSS, sharp, Zod, React Hook Form, CodeMirror, Radix UI, @lezer/highlight, react-day-picker, react-hotkeys-hook, TanStack, qrcode, katex · [Compare](https://seerepo.com/compare/CherryHQ/cherry-studio/vs/fluxerapp/fluxer)

## Frequently asked questions

### What language is fluxer written in?

fluxer is written in TypeScript, with 1,455,270 written lines.

### What framework does fluxer use?

fluxer is built with axum, Tokio, Caddy, tower, tower-layer, Hono, React, Electron, objc2-foundation, objc2-core-media, and objc2-app-kit.

### What database does fluxer use?

fluxer stores its data in Postgres, Elastic, and SQLite.

The proof: [fluxer_svc/src/postgres.rs, line 6](https://github.com/fluxerapp/fluxer/blob/851e55c70f9b62d5c168dac9f09c071306a20752/fluxer_svc/src/postgres.rs#L6)

### What does fluxer sign people in with?

fluxer signs people in with hmac, jose, @simplewebauthn/server, argon2, @simplewebauthn/browser, and objc2-authentication-services.

### What does fluxer take payments with?

fluxer takes payments with Stripe.

The proof: [fluxer_api/src/api/stripe/StripeClient.ts, line 10](https://github.com/fluxerapp/fluxer/blob/851e55c70f9b62d5c168dac9f09c071306a20752/fluxer_api/src/api/stripe/StripeClient.ts#L10)

### Does fluxer use AI?

Yes. fluxer uses AI through onnxruntime-web.

### What services does fluxer use?

fluxer stores files in AWS S3 and uses deadpool-postgres, tokio-postgres, tokio-postgres-rustls, moka, scylla, async-nats, NATS.io, @nats-io/transport-node, cassandra-driver, aws-sdk, Redis, LiveKit, lru-cache, and rusqlite.

The proof: [fluxer_api/src/api/infrastructure/IStorageService.ts, line 4](https://github.com/fluxerapp/fluxer/blob/851e55c70f9b62d5c168dac9f09c071306a20752/fluxer_api/src/api/infrastructure/IStorageService.ts#L4)

### Does fluxer have tests?

Yes. fluxer has 836 test files and is tested with libfuzzer-sys, Vitest, msw, pdf-lib, and yaml.

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

The ones that share most of its stack: calcom/cal.diy, BerriAI/litellm, and zed-industries/zed.

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