GEMINI.md
engine/src/flutter/lib/web_ui/GEMINI.mdGEMINI.md
Quality
74/100
Scores the file, not the repository.Length
425 words
6 headings · 8 code blocksRepository
178k
— · pushed 0 days agoLast changed
3 days ago
First indexed 3 days ago.1# Customizing the Flutter Web Engine23This document describes how to build the engine and run tests for the Flutter Web Engine using the `felt` tool.45## `felt`: Flutter Engine Local Tester67`felt` is a command-line tool for building and testing the Flutter web engine. To use it, you need to add `FLUTTER_ROOT/engine/src/flutter/lib/web_ui/dev` to your `PATH`.89Before building the engine, ensure your dependencies are up to date by running the following command from the root of your Flutter checkout:1011```bash12gclient sync -D13```1415### Building the Engine with `felt`1617The `felt build` command builds web engine targets. You can specify targets to build, or build all of them by default.1819**Common Targets:**2021* `sdk`: The Flutter Web SDK.22* `canvaskit`: Flutter's version of CanvasKit.23* `canvaskit_chromium`: A Chromium-optimized version of CanvasKit.24* `skwasm`: Experimental Skia Wasm module renderer.2526**Examples:**2728Build all web engine targets:2930```bash31felt build32```3334Build the `sdk` and `canvaskit` targets:3536```bash37felt build sdk canvaskit38```3940### Testing with `felt`4142The `felt test` command compiles and runs web engine unit tests.4344**Useful Flags:**4546* `--compile`: Compiles test bundles.47* `--run`: Runs unit tests.48* `--copy-artifacts`: Copies build artifacts needed for tests.49* `--list`: Lists all test suites and bundles.50* `--verbose`: Outputs extra debugging information.51* `--start-paused`: Pauses tests before starting to allow setting breakpoints.52* `--browser`: Filters tests by browser (e.g., `chrome`, `firefox`, `safari`).53* `--compiler`: Filters tests by compiler (e.g., `dart2js`, `dart2wasm`).54* `--renderer`: Filters tests by renderer (e.g., `canvaskit`, `skwasm`).5556**Examples:**5758Run all test suites:5960```bash61felt test62```6364Run a specific test file:6566```bash67felt test test/engine/util_test.dart68```6970Run tests that use the `dart2wasm` compiler:7172```bash73felt test --compiler dart2wasm74```7576Run tests on Chrome using the CanvasKit renderer:7778```bash79felt test --browser chrome --renderer canvaskit80```8182### Generating Golden Files8384To update the golden files for screenshot tests, use the `--update-screenshot-goldens` flag with the `felt test` command. This is useful when a browser update or other change affects the rendering of a test.8586The generated golden files are placed in the `.dart_tool/skia_gold` directory, under subdirectories for each test configuration (e.g., `chrome-dart2js-canvaskit-ui`).8788**Example:**8990```bash91felt test --update-screenshot-goldens test/ui/some_golden_test.dart92```9394### Test Directory Structure9596The `test` directory contains the following subdirectories:9798* `canvaskit`: Tests for the CanvasKit backend.99* `common`: Common utilities for tests.100* `engine`: Core engine logic tests.101* `fallbacks`: Tests for fallback mechanisms (like fonts).102* `ui`: Tests for the `dart:ui` layer implementation for the web, including most of the golden tests.103* `webparagraph`: Tests related to paragraph and text layout on the web.104
Also in flutter/flutter
Diff this repo’s formatsOne repository carrying more than one format is the comparison this product exists for: does anyone actually write different content in each file, or is one a copy of the other?
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| flutter/flutterengine/src/flutter/impeller/GEMINI.md · 178k | GEMINI.md | test | 54/100 | 3 days ago | |
| flutter/flutterdev/a11y_assessments/GEMINI.md · 178k | GEMINI.md | arch | 28/100 | 3 days ago | |
| flutter/flutterengine/src/flutter/GEMINI.md · 178k | GEMINI.md | style | 43/100 | 3 days ago | |
| flutter/flutterengine/src/flutter/tools/licenses_cpp/GEMINI.md · 178k | GEMINI.md | build | 40/100 | 3 days ago |
Similar configs
Same format, overlapping stack, ranked by quality.
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| firebase/flutterfireGEMINI.md · 9.2k | GEMINI.md | lint-formatstylearchdo-not+1 | 80/100 | 3 days ago | |
| mas-cli/masGEMINI.md · 12k | GEMINI.md | buildtestlint-formatstyle+3 | 65/100 | 2 days ago | |
| flutter/flutterengine/src/flutter/impeller/GEMINI.md · 178k | GEMINI.md | test | 54/100 | 3 days ago | |
| flutter/flutterengine/src/flutter/GEMINI.md · 178k | GEMINI.md | style | 43/100 | 3 days ago | |
| flutter/flutterengine/src/flutter/tools/licenses_cpp/GEMINI.md · 178k | GEMINI.md | build | 40/100 | 3 days ago | |
| flutter/flutterdev/a11y_assessments/GEMINI.md · 178k | GEMINI.md | arch | 28/100 | 3 days ago | |
| tensorflow/tensorflowthird_party/xla/xla/GEMINI.md · 197k | GEMINI.md | no sections | 4/100 | 3 days ago |
