Source: https://seerepo.com/r/AppFlowy-IO/AppFlowy/built
Markdown source: https://seerepo.com/r/AppFlowy-IO/AppFlowy/built.md
Description: AppFlowy is a Dart repo built with Flutter, Tokio, and plugin_platform_interface. It stores its data in shared_preferences and SQLite.

# What is AppFlowy built with?

AppFlowy is a Dart repo built with Flutter, Tokio, and plugin_platform_interface. It stores its data in shared_preferences and SQLite, reaches it with diesel and diesel_migrations, signs people in with hmac and pbkdf2, makes its content with image_picker, csv, file_picker, scraper, flutter_svg, and 4 more, validates its data with validator and schemars, deploys with tracing, log, tracing-subscriber, console-subscriber, tracing-appender, and 1 more, and uses rusqlite and moka. It has 412,249 written lines, with 423 test files.

Read on November 4, 2026, at commit 8fcee27.

Repository: https://github.com/AppFlowy-IO/AppFlowy

## Frontend

### The base

- **[Flutter](https://seerepo.com/uses/flutter)**: 1,180 files

### Styles

- **google_fonts**: 9 files

### Interface

- **desktop_drop**: 8 files
- **window_manager**: 4 files
- **animations**: 1 file
- **auto_size_text_field**: 1 file
- **console**: 1 file
- **flex_color_picker**: 1 file
- **flutter_staggered_grid_view**: 1 file
- **percent_indicator**: 1 file

## Backend

### Data

- **rusqlite**
- **shared_preferences**: 5 files
- **[SQLite](https://seerepo.com/uses/sqlite)**: 4 files · [frontend/rust-lib/flowy-sqlite-vec/src/db.rs, line 10](https://github.com/AppFlowy-IO/AppFlowy/blob/8fcee27d9bd93aad4ee0191d5d8d915d6a9a4e93/frontend/rust-lib/flowy-sqlite-vec/src/db.rs#L10)
- **moka**: 1 file

### Data access

- **diesel**: 26 files
- **diesel_migrations**: 2 files

### Sign-in

- **hmac**
- **pbkdf2**: 1 file

## Support

### The base

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

### Content

- **image_picker**: 5 files
- **csv**: 2 files
- **file_picker**: 2 files
- **scraper**: 2 files
- **flutter_svg**: 1 file
- **html**: 1 file
- **pulldown-cmark**: 1 file
- **xml**: 1 file
- **[zip](https://seerepo.com/uses/zip)**: 1 file

### Validation

- **validator**: 27 files
- **[schemars](https://seerepo.com/uses/schemars)**: 3 files

### Deploy

- **[tracing](https://seerepo.com/uses/tracing)**: 151 files
- **[log](https://seerepo.com/uses/log)**: 8 files
- **[tracing-subscriber](https://seerepo.com/uses/tracing-subscriber)**: 3 files
- **console-subscriber**: 1 file
- **tracing-appender**: 1 file
- **tracing-core**: 1 file

### Tools

- **analyzer**
- **flutter_lints**
- **freezed_annotation**: 144 files
- **syn**: 19 files
- **proc-macro2**: 9 files
- **json_annotation**: 5 files
- **quote**: 5 files
- **args**: 1 file
- **leak_tracker**: 1 file

### Other

- **bincode**
- **chrono-tz**
- **crossbeam-utils**
- **futures-channel**
- **getrandom**
- **md5**
- **notify**
- **openssl**
- **openssl-sys**
- **wasm-bindgen**
- **wasm-bindgen-futures**
- **collection**: 115 files
- **uuid**: 113 files
- **async-trait**: 99 files
- **provider**: 99 files
- **serde_json**: 68 files
- **serde**: 58 files
- **anyhow**: 39 files
- **fixnum**: 31 files
- **bytes**: 30 files
- **path**: 23 files
- **futures**: 22 files
- **chrono**: 20 files
- **dashmap**: 20 files
- **arc-swap**: 14 files
- **http**: 13 files
- **semver**: 13 files
- **strum_macros**: 11 files
- **tokio-stream**: 10 files
- **futures-util**: 9 files
- **lazy_static**: 9 files
- **serde_repr**: 9 files
- **walkdir**: 9 files
- **protobuf**: 8 files
- **futures-core**: 7 files
- **pin-project**: 7 files
- **fancy-regex**: 6 files
- **package_info_plus**: 6 files
- **tokio-util**: 6 files
- **nanoid**: 5 files
- **rayon**: 5 files
- **unicode-segmentation**: 5 files
- **url_launcher**: 5 files
- **archive**: 4 files
- **async-stream**: 4 files
- **base64**: 4 files
- **ffi**: 4 files
- **path_provider**: 4 files
- **thiserror**: 4 files
- **connectivity_plus**: 3 files
- **derivative**: 3 files
- **device_info_plus**: 3 files
- **indexmap**: 3 files
- **intl**: 3 files
- **rand**: 3 files
- **reqwest**: 3 files
- **tantivy**: 3 files
- **async**: 2 files
- **file**: 2 files
- **itertools**: 2 files
- **mime_guess**: 2 files
- **num_enum**: 2 files
- **sha2**: 2 files
- **tempfile**: 2 files
- **twox-hash**: 2 files
- **url**: 2 files
- **aes-gcm**: 1 file
- **atomic_refcell**: 1 file
- **brotli**: 1 file
- **byteorder**: 1 file
- **cfg-if**: 1 file
- **dyn-clone**: 1 file
- **include_dir**: 1 file
- **mime**: 1 file
- **once_cell**: 1 file
- **permission_handler**: 1 file
- **phf**: 1 file
- **regex**: 1 file
- **rust_decimal**: 1 file
- **serde_yaml**: 1 file
- **similar**: 1 file
- **strum**: 1 file
- **sysinfo**: 1 file
- **toml**: 1 file
- **version**: 1 file
- **zerocopy**: 1 file

## Other repos with a similar stack

- [localsend/localsend](https://seerepo.com/r/localsend/localsend/built): Flutter, shared_preferences, Tokio, plugin_platform_interface, desktop_drop, window_manager, flex_color_picker, image_picker, file_picker, tracing, tracing-subscriber · [Compare](https://seerepo.com/compare/AppFlowy-IO/AppFlowy/vs/localsend/localsend)
- [openai/codex](https://seerepo.com/r/openai/codex/built): SQLite, Tokio, hmac, pulldown-cmark, zip, schemars, tracing, log, tracing-subscriber, tracing-appender · [Compare](https://seerepo.com/compare/AppFlowy-IO/AppFlowy/vs/openai/codex)
- [openobserve/openobserve](https://seerepo.com/r/openobserve/openobserve/built): Tokio, hmac, csv, pulldown-cmark, zip, tracing, log, tracing-subscriber, console-subscriber, tracing-appender · [Compare](https://seerepo.com/compare/AppFlowy-IO/AppFlowy/vs/openobserve/openobserve)
- [denoland/deno](https://seerepo.com/r/denoland/deno/built): rusqlite, SQLite, Tokio, hmac, zip, tracing, log, tracing-subscriber · [Compare](https://seerepo.com/compare/AppFlowy-IO/AppFlowy/vs/denoland/deno)
- [zed-industries/zed](https://seerepo.com/r/zed-industries/zed/built): Tokio, console, pulldown-cmark, schemars, tracing, log, tracing-subscriber · [Compare](https://seerepo.com/compare/AppFlowy-IO/AppFlowy/vs/zed-industries/zed)
- [unionlabs/union](https://seerepo.com/r/unionlabs/union/built): SQLite, moka, Tokio, console, schemars, tracing, tracing-subscriber · [Compare](https://seerepo.com/compare/AppFlowy-IO/AppFlowy/vs/unionlabs/union)

## Frequently asked questions

### What language is AppFlowy written in?

AppFlowy is written in Dart, with 412,249 written lines.

### What framework does AppFlowy use?

AppFlowy is built with Flutter, Tokio, and plugin_platform_interface.

### What database does AppFlowy use?

AppFlowy stores its data in shared_preferences and SQLite and reaches it with diesel and diesel_migrations.

### What does AppFlowy sign people in with?

AppFlowy signs people in with hmac and pbkdf2.

### What services does AppFlowy use?

AppFlowy uses rusqlite and moka.

### Does AppFlowy have tests?

Yes. AppFlowy has 423 test files.

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

The ones that share most of its stack: localsend/localsend, openai/codex, and openobserve/openobserve.

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