- Get started with Flock, without losing your baseline
Identify your SDK, isolate a Flock trial, and keep a repeatable path back to your existing Flutter build.
- Write an issue another developer can reproduce
Prepare a useful Flutter or Flock bug report with exact revisions, a minimal reproduction, expected results and a comparison.
- Evaluate a Flutter fork with a reversible trial
A worked acceptance worksheet for comparing a known Flutter baseline with a candidate fork on a specific target.
- Framework, engine and tooling: find the right layer
Separate a Flutter framework change from engine binaries and toolchain behaviour before planning a fork or a bug report.
- Build a release evidence record
Keep SDK identity, test logs, target builds and known gaps together so another developer can review a Flutter release decision.
- Understand the maintenance cost of a Flutter fork
Map upstream changes, patches, engine artifacts and regression checks before relying on a long-lived Flutter fork.
- Review a Flutter patch as a change in behaviour
A reviewer’s procedure for tracing a patch from a reproducible problem through tests, target checks and upstream divergence.
- Inspect an FVM configuration locally
Check an FVM JSON configuration for missing fields, public repository identity and moving refs, entirely in your browser.
- Build a reproducible issue brief
Organise a Flutter or Flock bug report locally, with reproducible steps, expected behaviour, observations and environment details.
- Flutter Spaces Flock Announcement
On October 30th, we discussed Flock and Nest on our weekly Flutter Space.
- Introducing Flock and Nest at Flutter Silicon Valley
I announced Flock and Nest at Flutter Silicon Valley on October 24th, 2024.
- Join Our Discussions on GitHub
We're beginning to gather public feedback in GitHub Discussions. Join us.
- Talking Flock with Vasiliy Zukanov
I sit down with Vasiliy to chat about Flock.
- Talking Flock with Viktor Lidholt
I sit down with Viktor to chat about Flock, and discuss community concerns.
- The Three Stages of Flock
These are the three major phases of Flock development.
- We're forking Flutter. This is why.
The Flutter team has a labor shortage. We're forking Flutter so that the community can accelerate Flutter's development.
- Flock’s mission
Why Flock and Nest exist, and how a community fork can help teams facing a concrete Flutter blocker.
- Set up a Flock contribution
The original Nest-based workflow, with a preparation checklist for reading the tooling before using it.
- Contribute a change to Flock
The original patch-based contribution process and the evidence needed for a reviewable change.
- Nest — tooling for Flutter forks
Explore Nest’s fork assembly, patches and engine workflows, with a practical checklist for reading the source.
- Flock journal
Original Flock announcements, conversations and development plans, with their dates and authors intact.
- Practical Flock & Flutter guides
Reversible SDK trials, patch reviews and release evidence: procedures you can apply to a real Flutter project.
- Local developer tools
Inspect an FVM configuration and prepare a reproducible issue brief without uploading project text.
- About Flock & Nest
flutterfoundation.dev is the official home of Flock, the community fork of Flutter, and Nest, its fork-maintenance tooling.
- Matt Carroll — Flock articles
Original Flock articles and conversations by Matt Carroll, with a source-linked portrait and confirmed social profile.
- Privacy & site use
How Flock’s local tools, preferences, search and optional third-party recordings handle information.
- Flock & Nest — official home | Flutter Foundation
The official home of Flock, the community fork of Flutter, and Nest. Practical guides, local developer tools and original project articles.
More practical field guides
SDK & selection
- Which Flutter SDK is actually running?
Trace a terminal, IDE and FVM invocation to the SDK used in a Flutter or Flock investigation.
- FVM repository selection without cache guesswork
Distinguish a project SDK selection, repository URL and cached checkout before evaluating Flock.
- Branches, tags and exact SDK revisions
Build an SDK identity record that distinguishes a moving name from the commit actually evaluated.
- Separate package changes from an SDK trial
Read pubspec, lockfile and overrides when a Flutter fork comparison also changes package resolution.
- Roll back an SDK trial with the baseline intact
Restore a recorded Flutter project selection and verify it without deleting unrelated SDKs or application work.
Diagnosis & reporting
- Read flutter doctor as an environment report
Turn a Flutter tooling report into a target-specific investigation instead of treating every warning as the same blocker.
- Reduce a Flutter failure without losing the trigger
A controlled method for turning a large application failure into a small shareable reproduction.
- Trace the first useful Flutter error
Read a failure from the triggering action through the relevant exception and stack, without hiding the original evidence.
- Share diagnostic logs without exposing private data
Prepare a minimal, consistently redacted Flutter or Flock diagnostic record while preserving the facts needed to reproduce the failure.
Testing & comparison
- Compare debug, profile and release results
Choose a Flutter build mode that answers the question you are investigating, and keep mode-specific results separate.
- Review a widget regression test by its behaviour
Check whether a Flutter widget test demonstrates the original failure and protects the behaviour a user needs.
- Plan a fair Flutter fork performance comparison
Control the device, build mode, workload and measurement conditions before comparing two SDK candidates.
- Read CI results without trusting the cache label
Compare a CI job’s actual SDK, dependencies, target and result with the local investigation.
Nest & maintenance
- Read Nest’s assembly and publication workflows
Follow the checked Nest source from trigger through assembly to remote publication, without confusing configuration with a successful run.
- Trace a Nest engine artifact to its build inputs
Read the engine workflow’s target matrix, revision identifiers and artifact destinations before trusting a binary.
- Review an upstream conflict before editing a patch
A review worksheet for distinguishing a text conflict from a changed behavioural requirement in a Flutter fork.
Testing, delivery and source notebooks
Testing & review
- Choose the right test level for a Flutter regression
Turn a release blocker into a small test matrix: logic, widget behaviour and a target journey.
- Diagnose a widget test that never settles
Separate scheduled frames, unresolved work and an incorrect expectation before increasing a Flutter test timeout.
- Review a Flutter golden difference before accepting it
Distinguish an intended design change from changed fonts, environment or SDK before updating a visual baseline.
- Check accessibility after a Flutter UI change
A regression procedure for labels, focus, text scaling and semantics in a changed Flutter interaction.
Diagnosis & delivery
- Trace a missing Flutter image or font
Follow a resource from its source path and pubspec declaration through build output to the rendered result.
- Diagnose a Flutter web release that shows a blank page
Trace deployed startup from document and bootstrap through resource responses to the first application frame.
- Hot reload, restart and the state you are testing
Distinguish retained development state from a reproducible cold-start failure with a three-run worksheet.
- Separate download failures from Flutter SDK failures
Identify repository, package or artifact retrieval failures before changing app code during an SDK trial.
SDK & migration
- Audit an SDK migration before applying broad fixes
Map baseline-to-candidate changes to applicable notices, previewed edits and target checks.
Nest source notebook
- Read a Nest patch manifest before replaying it
Inspect order, files, source-defined arguments and checkout identity without changing Git history.
A community