Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Project Structure #7852

Open
5 of 13 tasks
wmontwe opened this issue May 16, 2024 · 0 comments
Open
5 of 13 tasks

Project Structure #7852

wmontwe opened this issue May 16, 2024 · 0 comments
Labels
type: epic A major feature or initiative

Comments

@wmontwe
Copy link
Collaborator

wmontwe commented May 16, 2024

This epic tracks the progress of implementing the decisions made in ADR-0007 introduced by #7829.

Overview

The ADR-0007 proposes a new project structure to improve maintainability and streamline development. The structure uses Gradle and consists of various module types such as app, app-common, feature, core, and library modules. This modular structure is designed to enable clear separation of concerns and ensure efficient dependency management. It also includes a plan for migrating legacy modules to the new structure over time.

Goals

  1. Setup the new modular structure as outlined in the ADR.
  2. Migrate existing code to the new structure.
  3. Update build scripts and CI/CD pipelines to accommodate the new structure.
  4. Update documentation to reflect the new project structure.

Tasks

  • Setup the new modular structure as outlined in the ADR.
    • Create app-thunderbird and app-k9mail modules.
    • Create app-common module.
    • Create feature:* modules as needed.
    • Create core:* modules as needed.
    • Create library:* modules as needed.
  • Migrate existing code to the new structure.
    • Identify features in the legacy code that can be moved to feature:* modules.
    • Identify core utilities in the legacy code that can be moved to core:* modules.
    • Identify libraries in the legacy code that can be moved to library:* modules.
  • Update build scripts to accommodate the new structure.
  • Update CI/CD pipelines to accommodate the new structure.
  • Update documentation to reflect the new project structure.
@wmontwe wmontwe added the type: epic A major feature or initiative label May 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: epic A major feature or initiative
Projects
None yet
Development

No branches or pull requests

1 participant