OpenEnergyPlatform / OpenEnergyPlatform/oeplatform
Project settings: Some/all Oeplattform features should be optional and configurable via settings
@jh-RLI is already working on this.
Since Jul 16, 2025.
- Dominant language
- Python
- Stars
- 65
- Forks
- 29
- Avg merge
- 15h 25m
- Merged PRs (30d)
- 32
Description
Description of the issue
The oeplatform is a growing open source software. Within the last few years, it became more clear that users want to be able to install their own, self-hosted instance. This raises the need to enable/disable some features as they are quite specific to the research we do in our organization.
In one use case we supported individuals to install their own instance, we saw many issues when their instance code starts to differ from the official code repository here on GitHub. This is why we think users should stay in sync with the official code base but we must enable them to select what features they need.
Ideas of solution
We can either use the settings.py or introduce another setting file which would be - similar to the securitysettings.py - ignored by git. This settings file would be used to activate / deactivate features by Boolean values.
To start of I already added such settings variables to the current settings file to better handle features like the OEKG, OEVKG, the peer review and additionally DOCKER to variate the project settings depending on the deployment structure.
Depending on the value, we would need to update the code of the oeplatform to remove the features from the UI and from the API.
This still will not fully decouple instances from the feature dependencies, as the python requirements will be installed anyway. This might be okay as we will make sure everything works with the used requirements ... still, users might install packages they don't need for their use case. To solve this issue we would have to customize the pip installation, e, g. using multiple requirements files which collect packages specifically relevant to a feature and general purpose packages.
Workflow checklist
- I am aware of the workflow in CONTRIBUTING.md
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.