Reference

Flashpack Architecture

Rust workspace layout and runtime flow for Vista Flashpack.

Updated: 2026-03-20

What Flashpack Is

Flashpack is Vista's Rust-first engine track. It is the Vista equivalent of the Turbopack role in the Next.js ecosystem, with Vista naming and workflow.

Top-Level Layout

  • flashpack/crates/: Rust engine crates.
  • flashpack/benchmark-apps/: benchmark apps focused on engine behavior.
  • flashpack/packages/: JS bridge packages for tooling/runtime integration.
  • flashpack/scripts/: operational tooling scripts.
  • flashpack/xtask/: Rust automation task runner.

Core Crate Groups

  • Graph and tasks: flash-tasks, flash-tasks-fs
  • Engine core: flashpack-core, flashpack
  • Pipeline domains: flashpack-ecmascript, flashpack-css, flashpack-resolve
  • Runtime layers: flashpack-node, flashpack-nodejs, flashpack-browser, flashpack-dev-server
  • Targets: flashpack-wasm

Workspace Wiring

The root Cargo workspace includes:

  • Vista Rust crates (crates/vista-*)
  • Flashpack crates (flashpack/crates/*)
  • Flashpack task runner (flashpack/xtask)

This keeps the Rust graph unified for CI and local development.

Runtime Artifacts

Flashpack runtime/cache artifacts are written to .flash/:

  • .flash/cache/ for cache data
  • .flash/graph/ for per-phase pipeline snapshots
  • .flash/logs/ for phase execution logs
  • .flash/state/latest.json for current engine state

CLI Surface

create-vista-app can scaffold projects for either engine mode:

  • default (stable default path)
  • flashpack (Rust-first path)

Generated scripts align to the selected mode (vista dev, vista dev --flashpack, etc.).