ios-oss icon indicating copy to clipboard operation
ios-oss copied to clipboard

[NTV-566] Modular Folder Reorganization Within Existing Frameworks

Open msadoon opened this issue 2 years ago • 1 comments

📲 What

Right now the folder structure isn’t organized around features/pages of the app.

It’s mostly organized around all views or all view models or all helper classes.

Our three main frameworks are Kickstarter-Framework-iOS KsAPI and Library.

Lets look through these frameworks and move files around in such a way that existing files in a framework are organized around a feature. Eg. “Comments” in Kickstarter-Framework-IOS would be a folder containing the datasource file, cell view files, view controller files, and so on. Everything inside Kickstarter-Framework-iOS that pertains to “Comments“ but is currently in a large “Views“ folder or “Controllers“ folder can be put together under a “Comments“ folder.

🤔 Why

So the idea is a feature can be worked on in one place within the entire project. Normally we would have view models in the Library framework, views in Kickstarter framework and models/networking in the KsApi framework.

🛠 How

Kickstarter-Framework-iOS

Files moved out of Views Views --> Cells, Controllers, Storyboards, Datasources

Comments

  • views (including cells), controllers, data sources and storyboards

✅ Acceptance criteria

  • [ ] Ensure tests pass
  • [ ] Smoke test all features moved into their own folder.

⏰ TODO

  • [ ] Organize all files in the Kickstarter-Framework-iOS framework into respective features.

msadoon avatar Jun 28 '22 20:06 msadoon

Codecov Report

Merging #1703 (cfbd6c8) into main (2d49f06) will decrease coverage by 0.00%. The diff coverage is n/a.

@@            Coverage Diff             @@
##             main    #1703      +/-   ##
==========================================
- Coverage   85.55%   85.55%   -0.01%     
==========================================
  Files        1258     1258              
  Lines      112741   112741              
  Branches    29904    29904              
==========================================
- Hits        96452    96450       -2     
- Misses      15242    15244       +2     
  Partials     1047     1047              
Impacted Files Coverage Δ
...ivities/Controllers/ActivitiesViewController.swift 53.84% <ø> (ø)
...es/Controllers/ActivitiesViewControllerTests.swift 100.00% <ø> (ø)
.../Activities/DataSources/ActivitiesDataSource.swift 92.95% <ø> (ø)
...vities/DataSources/ActivitiesDataSourceTests.swift 100.00% <ø> (ø)
...ties/Views/ActivityErroredBackingsCellHeader.swift 94.87% <ø> (ø)
...ties/Views/Cells/ActivityErroredBackingsCell.swift 94.93% <ø> (ø)
...vities/Views/Cells/ActivityFriendBackingCell.swift 91.52% <ø> (ø)
...ivities/Views/Cells/ActivityFriendFollowCell.swift 87.87% <ø> (ø)
...vities/Views/Cells/ActivityProjectStatusCell.swift 96.55% <ø> (ø)
...ities/Views/Cells/ActivitySurveyResponseCell.swift 90.76% <ø> (ø)
... and 32 more

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 2d49f06...cfbd6c8. Read the comment docs.

codecov[bot] avatar Jun 28 '22 20:06 codecov[bot]

Closing this as main is too far foward in commits. Will re-use PR description and create a new branch.

msadoon avatar Sep 06 '22 15:09 msadoon