app_vs_lib

TODO: TODO_03_22_24_33.consolidate_sub_command_and_entry_func_docs.md: The significance of the difference between app vs lib has been obsoleted by boot_vs_start - effectively, the protoprimer during proto runtime is used as app only (either as env bootstrapper or app starter).

TODO: Update it after adding call_lib.

Intro

proto_code is designed to run without venv.

This makes it useful for scripts not only as an application (see boot_vs_start), but also as an initial library for basic functionality before venv is available.

proto_code: app vs lib

  • app = application

    This means that the entry_script being executed is meant to traverse state_dependency in one of the sub_command.

    Effectively, the script has to execute proto_main function from proto_code (see protoprimer.primer_kernel). See boot_vs_start.

  • lib = library

    When proto_code is used as a library, the entry_script can use anything proto_code offers.

See also