<#Module#>Feature naming is used for modules user directly interact with
<#Service#> naming modules is used for modules that are used by developers to build feature modules
Basically your Sources folder structure will look kinda like this
Sources { // Main modules
AppFeature // Entry point for the app, contains AppDelegate, RootViewController, AppState etc., coordinates app flows
MainFeature // Main app flow, non-main flows may be Onboarding/Admin/Auth for example.
<#SomeFeature#>Feature // Any other feature
AppUI // App-specific UI components
APIClient // Service module example
Resources // Contains shared resources and generated boilerplate, but you can declare target-specific resources too, see https://github.com/capturecontext/spmgen
}
Note:
Scripts can be improved later so we advice you to keep an eye on the repo and a tracking reference to our main branch to keep your infrastructure up to date 🚀
basic-ios-template
Getting started
Fork the repo as a template.
Create a local folder for your app and navigate to it
App
and navigate to itorg-domain.org-host
to your bundleID prefixMyTarget
to<your-app-name>-ios
MyApp
to<YourAppName>
Than you can commit changes and you are ready for the actual development 😎
Structure
See Extensions and Dependencies for more details for these modules
Main work is happenning in the root package.
<#Module#>Feature
naming is used for modules user directly interact with<#Service#>
naming modules is used for modules that are used by developers to build feature modulesBasically your
Sources
folder structure will look kinda like thisRecommended dependencies