Skip to content

[FEATURE] Modularize institution-specific customizations and remove two-branch structure #16

@KunoVonHagen

Description

@KunoVonHagen

Is your feature request related to a problem? Please describe.
Currently, the repository uses a two-branch structure: the main branch serves as a general version suitable for any institution, while the lecture branch contains specific modifications required by Heidelberg University. This setup leads to redundancy and makes maintenance difficult as institutional requirements change.

Describe the solution you'd like
Replace the two-branch structure by introducing modular solutions for all components that typically vary from institution to institution (e.g., authentication, branding, lecture configurations, etc.). Develop a plugin or module system to encapsulate institution-specific code and configurations, so these can be cleanly maintained and extended as new institutions adopt the system. The main branch should remain the central codebase, with separate modules or configuration files handling customization, rather than maintaining a long-lived parallel branch.

Describe alternatives you've considered

  • Continue maintaining a dedicated branch for each institution, which risks divergence and duplicated efforts.
  • Hardcoding institution-specific logic behind configuration toggles, which could clutter the core codebase.

Additional context
A modular approach can streamline contributions, reduce code duplication, and simplify adoption for new institutions. Modular design also improves maintainability and supports the growth of the project beyond a single university.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions