I was trying to manually test with the TLE backend but couldn't get passed the error Value error, not a valid backend [type=value_error, input_value='stapi_fastapi_tle_backend:StapiMockBackend', input_type=str]. It is unclear to me how anything from the stapi_fastapi_tle_backend package would be available given that it is not installable, i.e., it lacks a pyproject.toml.
In a similar vein, I don't understand how the Landsat backend does work. It seems not installable, but for whatever reason it does seem to be importable in stapi_fastapi.__dev__.
I'd propose restructuring this repo to embrace it as a monorepo of three different packages: stapi-fastapi, stapi-fastapi-landsat, stapi-fastapi-tle-backend. Each of these would be isolated into subdirectories with their own pyproject.toml, allowing each of them to be installed together or independently.
The stapi-fastapi-test-backend appears to be a test-specific implementation for stapi-fastapi testing, and as such I would move its implementation into the tests package for stapi-fastapi.
In the future (hopefully near) when we are ready to release this project to pypi, just the stapi-fastapi package would be built and released. The others would remain accessible via this repo for users that want to use them as examples or for testing.
Maybe if I could figure out how the Landsat backed does work and could get the TLE backend functional then my ideas would be less relevant, but I still think the proposed organization would be cleaner and more straightforward.
I'd be happy to put together a PR for this reorganization if there's appetite for such a change.