SIGN IN SIGN UP
name: flame_workspace
repository: https://github.com/flame-engine/flame
workspace:
- doc/flame/examples
- doc/tutorials/klondike/app
- doc/tutorials/space_shooter/app
- doc/tutorials/platformer/app
- packages/flame_behavior_tree
- packages/flame_behavior_tree/behavior_tree
- packages/flame_behavior_tree/example
- packages/flame_test
- packages/flame_test/example
- packages/flame_tiled
- packages/flame_tiled/example
- packages/flame_oxygen
- packages/flame_oxygen/example
- packages/flame_isolate
- packages/flame_isolate/example
- packages/flame_texturepacker
- packages/flame_texturepacker/example
- packages/flame_lint
- packages/flame_sprite_fusion
- packages/flame_sprite_fusion/example
- packages/flame_devtools
- packages/flame_fire_atlas
- packages/flame_fire_atlas/example
- packages/flame_audio
- packages/flame_audio/example
- packages/flame_studio
- packages/flame_spine
- packages/flame_spine/example
- packages/flame_splash_screen
- packages/flame_splash_screen/example
- packages/flame_bloc
- packages/flame_bloc/example
- packages/flame_kenney_xml
- packages/flame_kenney_xml/example
- packages/flame
- packages/flame/example
- packages/flame_lottie
- packages/flame_lottie/example
- packages/flame_markdown
- packages/flame_markdown/example
- packages/flame_console
- packages/flame_console/example
- packages/flame_rive
- packages/flame_rive/example
- packages/flame_forge2d
- packages/flame_forge2d/example
- packages/flame_noise
- packages/flame_riverpod
- packages/flame_riverpod/example
- packages/flame_svg
- packages/flame_svg/example
- packages/flame_network_assets
- packages/flame_network_assets/example
- packages/flame_3d
- packages/flame_3d/example
- packages/flame_jenny
- packages/flame_jenny/jenny
- examples/games/trex
- examples/games/padracing
- examples/games/rogue_shooter
- examples/games/crystal_ball
- examples
environment:
sdk: ">=3.8.0 <4.0.0"
dev_dependencies:
melos: ^7.0.0-dev.7
melos:
command:
version:
# Only allow versioning to happen on main branch.
branch: main
# Generates a link to a prefilled GitHub release creation page.
releaseUrl: true
includeCommitId: true
linkToCommits: true
bootstrap:
environment:
sdk: ">=3.8.0 <4.0.0"
flutter: ">=3.32.0"
dependencies:
meta: ^1.12.0
vector_math: ^2.1.4
dev_dependencies:
dartdoc: ^8.0.8
mocktail: ^1.0.4
test: any
publish:
hooks:
pre: melos devtools-build
scripts:
lint:all:
steps:
- analyze
- format
description: Run all static analysis checks.
analyze:
run: melos exec dart analyze .
description: Run `dart analyze` for all packages.
format-check:
run: melos exec dart format . --set-exit-if-changed
description: Run `dart format` checks for all packages.
markdown-check:
run: markdownlint . --ignore-path .markdownlintignore --config .markdownlint.yaml
description: Runs the markdown linting check.
markdown-fix:
run: markdownlint . --fix --ignore-path .markdownlintignore --config .markdownlint.yaml
description: Fixes the markdown linting errors.
dartdoc:
run: melos exec flutter pub run dartdoc
description: Run dartdoc checks for all packages.
doc-setup:
run: ./scripts/doc-setup.sh
description: Prepares the environment for documentation development.
doc-build:
run: cd "$MELOS_ROOT_PATH/doc/_sphinx" && make html
description: Create the sphinx html docs.
doc-serve:
run: cd "$MELOS_ROOT_PATH/doc/_sphinx" && make livehtml
description: Recompiles the docs every time there is a change in them and opens your browser.
doc-kill:
run: cd "$MELOS_ROOT_PATH/doc/_sphinx" && python3 kill-server.py
description: Kills any TCP processes running on port 8000.
doc-clean:
run: cd "$MELOS_ROOT_PATH/doc/_sphinx" && make clean
description: Removes all Sphinx's cached generated files.
doc-linkcheck:
run: cd "$MELOS_ROOT_PATH/doc/_sphinx" && make linkcheck
description: Checks whether there are any broken links in the docs.
test:select:
run: melos exec -c 1 -- flutter test
packageFilters:
dirExists: test
description: Run `flutter test` for selected packages.
test:
run: melos run test:select --no-select
description: Run all Flutter tests in this project.
coverage:
steps:
- melos exec -- flutter test --coverage
- melos exec -- genhtml coverage/lcov.info --output-directory=coverage/
packageFilters:
dirExists: test
description: Generate coverage for the selected package.
upgrade: melos exec flutter pub upgrade
update-goldens:
run: melos exec -- flutter test --update-goldens
packageFilters:
dirExists: test
description: Re-generate all golden test files
devtools-build:
run: melos exec -- dart run devtools_extensions build_and_copy --source=. --dest=../flame/extension/devtools
packageFilters:
scope: flame_devtools
description: Builds the devtools and copies the build directory to the Flame package.
devtools-simulator:
run: melos exec -- flutter run -d chrome --dart-define=use_simulated_environment=true
packageFilters:
scope: flame_devtools
description: Runs the devtools in the simulated mode.