arch-ribslisted
Install: claude install-skill kbelasheuski/ios-architecture-skills
# RIBs (Uber)
**Source references:**
- uber/RIBs — https://github.com/uber/RIBs
- iOS Tutorial 1 — https://github.com/uber/RIBs/wiki/iOS-Tutorial-1
- iOS Tutorial 2 (composing RIBs) — https://github.com/uber/RIBs/wiki/iOS-Tutorial-2
- TicTacToe sample sources — https://github.com/uber/RIBs/tree/main/ios/tutorials
Conventions match the TicTacToe tutorial: `Builder` constructs the RIB; `Buildable` is the protocol the parent depends on; `Component<Dep>` carries dependencies; `Router : ViewableRouter` (or `Router`); `Interactor : PresentableInteractor`. Listener interfaces flow events upward.
## When to use
- iOS team ≥ 30 engineers, deeply nested persistent state.
- Cross-platform parity with Android RIBs target.
- Reject otherwise — cost not justified.
## Folder structure
```
App/
AppDelegate.swift
RIBs/
Root/
RootBuilder.swift
RootComponent.swift
RootInteractor.swift
RootRouter.swift
RootViewController.swift
UserList/
UserListBuilder.swift
UserListComponent.swift
UserListInteractor.swift
UserListRouter.swift
UserListViewController.swift
UserDetail/
UserDetailBuilder.swift
UserDetailComponent.swift
UserDetailInteractor.swift
UserDetailRouter.swift
UserDetailViewController.swift
```
## Reference implementation
The worked `Root → UserList → UserDetail` RIB tree lives in **`examples/ribs/`** —
Builder/Component/Interactor/Router/ViewController per RIB, with the Root wiring
UserList as its initial child. `D