Skip to content

run

FreeBodyEngine.dev.run #

main(path='./') #

CLI entry point for fb run: builds the project fresh (build(path, True)), then launches its main file in a subprocess with --dev/--path=/--name= plus every original CLI argument forwarded, so the launched process sees the same flags this one was invoked with. Swallows Ctrl+C so interrupting the dev run doesn't surface as a traceback.

--web (see get_build_platform() in build/builder.py, which also checks for this same flag) takes a completely different path here too - see _run_web() - since "launch a subprocess" has no web equivalent at all: there's no second process to launch inside a browser tab, and the project doesn't run until an actual browser loads the built page.

--android is a third, separate path - see _run_android() - for the same reason: there's no local subprocess to launch at all, only a build to hand to buildozer and a remote device to install it on and launch it on over adb.