Modularise the architecture #250
Labels
AA - Non Functional
Non-Functional requirements (Quality or Security or Tech Debt)
blocked
Another issue is blocking this one
EPIC
This issue is too big and needs to be broken down
Different things to consider:
Plugin-based architecture
Is conda still the most appropriate dependency management system? Perhaps pip or one of the modern alternatives
How would inter-dependencies between plugins work? E.g Core v1.1 < Lidar plugin v2.4 < Flood plugin v4.3 < BG_Flood plugin v1.2
Git repo strategy e.g. monorepo, submodules, multiple repos etc.
Better handling of defining the AOI (e.g. accept arbitrary shapes)
BG_Flood would be a good first thing to try separate into a plugin
Would each plugin expose its own endpoints?
Using an internal registry may make it easier for development rather than relying on package managers (for if we use submodules or multiple modules, or even just for GVC
the front-end will also need to be able to read the plugin list and probably configure it somehow
Utilising plugins or feature flags may make the branching strategy simpler. I.e. maybe we can have in-development plugins disabled on the main branch, and available on dev machines and branches
Sub task:
The text was updated successfully, but these errors were encountered: