-
Notifications
You must be signed in to change notification settings - Fork 1
1 ‐ About the architecture
The OUDS iOS library provides a library as a Swift Package so as to let users (i.e. developers) to integrate the library inside Xcode. It is not planned (yet) to expose the library as XCFramework or Pod.
This package contains several modules with their own responsabilities and hierarchy.
The OUDS library contains high level utilities and objects.
It contains also the OUDSTheme
, which can be seen as an abstract theme, a contract, to implement for white label themes for example.
This library will contain in the futur the modules exposed by the library, i.e. packs of components and features.
This library contains the components exposed by the OUDS package, i.e. buttons, etc.
This library may contain tokens of components, nothing yet.
This library contains the inverse theme, i.e. a kind of dark mdoe theme for specific use cases and apps.
This library exposes the Orange brand theme, as a default theme for subtheme.
This library contains all the semantic tokens, used by components pointing to raw tokens.
This library contains all the raw tokens, i.e raw values to apply on components through semantic tokens.
This library contains the foundations objects and utils
flowchart TD
A(OUDS) --> B(OUDS Tokens Component)
A(OUDS) --> C(OUDS Tokens Semantic)
A(OUDS) --> D(OUDS Tokens Raw)
E(OUDS Modules) --> F(OUDS Components)
F --> B
F --> A
G(OUDS Themes Inverse) --> H(OUDS Themes Orange)
H --> A
B --> C
C --> D
D --> I(OUDS Foundations)
Today the project contains a demo application exposing the features provided by the library. In the future this project will be move elsewhere, inside an internal forge so as to be able to build the application with open source public content (this library) and also private assets which should not be exposed (fonts, resources, brands to not subclass, etc.).