Skip to content

Modularize flavors and base apps #656

@modulitos

Description

@modulitos

We need better dependency management for our flavors and base apps. These currently exist as separate Django applications, where each flavor lives as a folder under our flavors app. This is creating a monolithic repo, which contains all flavors, and does not manage the dependencies of each flavor with the base flavor.

To fix this, our flavors and our base apps should be modularized, where a flavor app requires the base app dependency, and uses semantic versioning to do so. So I think we should package each flavor that has custom code separately under it's own repo and it should extend our base flavor.

We can do this using Django apps. But since we are moving towards a static site (#655), I think we should finish that issue first, then modularize our flavors using npm modules. We'll still need to figure out a proper API for extending our base module, but I imagine the solution will still involve extending Backbone views as we are currently doing.

So I propose the following TODO's (feel free to update these as needed):

  • Complete Static site conversion #655
  • Create a spec that outlines and API for our base module, and some examples around how a flavor module containing custom code will extend the base module.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions