This is an index of team-facing documentation for the [flutter/engine team](https://github.com/flutter/flutter/tree/main/engine).

- [Accessibility on Windows](https://github.com/flutter/flutter/blob/main/docs/platforms/desktop/windows/Accessibility-on-Windows.md)
- [Code signing metadata](./release/Code-signing-metadata.md) for engine binaries
- [Compiling the engine](./contributing/Compiling-the-engine.md)
- [Comparing AOT Snapshot Sizes](./benchmarks/Comparing-AOT-Snapshot-Sizes.md)
- [Crashes](./Crashes.md)
- [Custom Flutter engine embedders](./Custom-Flutter-Engine-Embedders.md)
- [Custom Flutter Engine Embedding in AOT Mode](./Custom-Flutter-Engine-Embedding-in-AOT-Mode.md)
- [Debugging the engine](./Debugging-the-engine.md)
- [Flutter engine operation in AOT Mode](./Flutter-engine-operation-in-AOT-Mode.md)
- [Flutter Test Fonts](https://github.com/flutter/flutter/blob/main/docs/contributing/testing/Flutter-Test-Fonts.md)
- [Flutter's modes](./Flutter's-modes.md)
- [Engine Clang Tidy Linter](./ci/Engine-Clang-Tidy-Linter.md)
- [Engine disk footprint](./Engine-disk-footprint.md)
- [Engine-specific Service Protocol extensions](./Engine-specific-Service-Protocol-extensions.md)
- [Engine pre‐submits and post‐submits](./ci/Engine-pre-submits-and-post-submits.md)
- [Image Codecs in the Flutter Engine](Image-Codecs-in-the-Flutter-Engine.md)
- [Impeller](./impeller/README.md) documentation index
- [Life of a Flutter Frame](Life-of-a-Flutter-Frame.md)
- [Resolving common build failures](https://github.com/flutter/flutter/blob/main/docs/platforms/android/Resolving-common-build-failures.md)
- [Setting up the Engine development environment](./contributing/Setting-up-the-Engine-development-environment.md)
- [Supporting legacy platforms](Supporting-legacy-platforms.md)
- [Testing Android Changes in the Devicelab on an Emulator](https://github.com/flutter/flutter/blob/main/docs/platforms/android/Testing-Android-Changes-in-the-Devicelab-on-an-Emulator.md)
- [Testing the engine](./testing/Testing-the-engine.md)
- [The Engine architecture](https://github.com/flutter/flutter/blob/main/docs/about/The-Engine-architecture.md)
- [Upgrading Engine's Android API version](https://github.com/flutter/flutter/blob/main/docs/platforms/android/Upgrading-Engine's-Android-API-version.md)
- [Using the Dart Development Service (DDS) and Flutter DevTools with a custom Flutter Engine Embedding](./Using-the-Dart-Development-Service-(DDS)-and-Flutter-DevTools-with-a-custom-Flutter-Engine-Embedding.md)
- [Using Sanitizers with the Flutter Engine](./Using-Sanitizers-with-the-Flutter-Engine.md)
