# Dark Bio > Dark Bio builds an open platform for genomic and personal health analysis where apps are sent to the data instead of the data to apps. The Ark, a small device the person owns, holds their genome, runs those apps in a sandbox and lets the owner approve every run and every released result from their phone. Ark I is not on general sale yet. Everything linked below is public today. READMEs and help topics are linked as raw files, and the raw host lists no folders. To follow a link to a folder, open the repository on github.com or clone it. ## Overview - [Whitepaper](https://dark.bio/whitepaper.md): The problem, the architecture and trust model, the ecosystem it enables and its limitations (draft; PDF at https://dark.bio/whitepaper.pdf) - [Blog](https://blog.dark.bio): Articles on genomics, AI and cryptography, and a hands-on tour of the platform from emulators to AI agents - [GitHub](https://github.com/dark-bio): Every public repository ## Using an Ark - [Ark Hub](https://hub.dark.bio): Browser interface to a connected Ark, hardware or emulated, for enrolling, pairing, unlocking, managing datasets, updating firmware and running apps; requires WebUSB support - [Ark Companion for iOS](https://apps.apple.com/app/id6751324700): The owner's iOS phone app for pairing, unlocking and approvals - [Ark Companion for Android](https://play.google.com/store/apps/details?id=bio.dark.companion): The owner's Android phone app for pairing, unlocking and approvals ## Ark command line - [ark command line tool](https://raw.githubusercontent.com/dark-bio/cli/main/README.md): Install, pair, unlock, manage datasets, run apps, update firmware and diagnose - [ark help agents](https://raw.githubusercontent.com/dark-bio/cli/main/src/help/agents.md): Running commands, reading results and checking state from a script or an AI agent, what only the owner can approve, and the steps of each common task - [ark help devices](https://raw.githubusercontent.com/dark-bio/cli/main/src/help/devices.md): Finding and choosing an Ark, its identity and trust, pairing and unlocking, what status reports, emulated Arks and cloud environments - [ark help datasets](https://raw.githubusercontent.com/dark-bio/cli/main/src/help/datasets.md): Slots, uploads, reference downloads, the cache and emptying a slot - [ark help apps](https://raw.githubusercontent.com/dark-bio/cli/main/src/help/apps.md): Running an app, the manifest, grants and questions, the data an app reads, and the sandbox and its limits - [ark help firmware](https://raw.githubusercontent.com/dark-bio/cli/main/src/help/firmware.md): Firmware compatibility, listing and installing builds, and the firmware of emulated Arks - [ark help output](https://raw.githubusercontent.com/dark-bio/cli/main/src/help/output.md): The stdout and stderr contracts, `--json` documents and events, app output, exit codes and error codes ## Ark Emulator - [Ark Emulator](https://raw.githubusercontent.com/dark-bio/emulator/main/README.md): Desktop app and `ark-emulator` command that boot the real ArkOS firmware in QEMU for development, demos and integration testing; not a vault, so real data belongs on hardware - [ark-emulator help agents](https://raw.githubusercontent.com/dark-bio/emulator/main/launcher/src/cli/help/agents.md): Starting, listing, stopping and wiping emulators and pressing their button from a script or an AI agent, and handing them to `ark` - [ark-emulator help images](https://raw.githubusercontent.com/dark-bio/emulator/main/launcher/src/cli/help/images.md): The image file that is the device, where it lives, which one a start boots, its environment and identity, and wiping - [ark-emulator help registry](https://raw.githubusercontent.com/dark-bio/emulator/main/launcher/src/cli/help/registry.md): The loopback listing of running emulators, for a client that finds them itself - [ark-emulator help output](https://raw.githubusercontent.com/dark-bio/emulator/main/launcher/src/cli/help/output.md): The stdout and stderr contracts, `--json` documents and events, log files, exit codes and error codes ## Writing apps - [Example apps](https://raw.githubusercontent.com/dark-bio/examples/main/README.md): Worked apps in Rust, Go, C and Python, one source file each, with fixtures that run them without an Ark - [Agent instructions](https://raw.githubusercontent.com/dark-bio/examples/main/AGENTS.md): The rules for writing an app and its report, in the form agents read first - [App model](https://raw.githubusercontent.com/dark-bio/examples/main/docs/01-app-model.md): The two passes, the checks, the sandbox and its limits, and the develop flag - [Manifest](https://raw.githubusercontent.com/dark-bio/examples/main/docs/02-manifest.md): Naming the app, requesting data, asking the owner questions and listing the app - [Data paths](https://raw.githubusercontent.com/dark-bio/examples/main/docs/03-data-paths.md): The data tree apps read and the rules every path follows - [Reading data](https://raw.githubusercontent.com/dark-bio/examples/main/docs/04-reading-data.md): Absence and failure, sequences and genotypes, and each kind of grant from narrowest to broadest - [Running apps](https://raw.githubusercontent.com/dark-bio/examples/main/docs/05-running.md): Toolchains, fixtures, and running apps locally, on an emulator or on an Ark - [Generating reports](https://raw.githubusercontent.com/dark-bio/examples/main/docs/06-reports.md): What an app prints, its shape and its voice ## Protocol and trust - [Wire protocol](https://raw.githubusercontent.com/dark-bio/wire-rs/main/README.md): The encrypted, request oriented transport between an Ark and its host - [Wire messages](https://raw.githubusercontent.com/dark-bio/wire-rs/main/proto/wire.proto): Protobuf schema of every wire protocol request and response - [COBS](https://raw.githubusercontent.com/dark-bio/cobs-rs/main/README.md): Fast, allocation-free framing codec used by the wire (crate `darkbio-cobs`) - [Transparency reports](https://raw.githubusercontent.com/dark-bio/transparency/main/README.md): The hardware security modules and every published public key, verifiable with the included scripts ## Cryptography - [Rust](https://raw.githubusercontent.com/dark-bio/crypto-rs/main/README.md): xDSA (ML-DSA-65 with Ed25519), xHPKE (X-Wing), COSE and CWT (crate `darkbio-crypto`) - [Go](https://raw.githubusercontent.com/dark-bio/crypto-go/main/README.md): The same API surface at the same versions (module `github.com/dark-bio/crypto-go`) - [TypeScript](https://raw.githubusercontent.com/dark-bio/crypto-ts/main/README.md): WASM binding of the Rust library (npm `@darkbio/crypto`) - [Flutter](https://raw.githubusercontent.com/dark-bio/crypto-fl/main/README.md): FFI binding of the Rust library (pub.dev `darkbio_crypto`)