ios-oss
ios-oss copied to clipboard
[NTV-566] Modular Folder Reorganization Within Existing Frameworks
📲 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.
Codecov Report
Merging #1703 (cfbd6c8) into main (2d49f06) will decrease coverage by
0.00%
. The diff coverage isn/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.
Closing this as main
is too far foward in commits. Will re-use PR description and create a new branch.