Ribs: [Question] Using Motif with RIBs

Created on 14 Dec 2018  路  6Comments  路  Source: uber/RIBs

I'm currently exploring using Motif with RIBs, but I'm not seeing a way forward since RIBs seems to depend heavily on passing Dagger Components around, which are not exposed by Motif Scopes.

Does Uber use RIBs with Motif at all? If so, could the maintainers provide some guidance how?

Most helpful comment

We've made some minor changes to the base classes internally to support Motif with RIBs. I'll work on porting those updates to this repo soon. I'll also add some Motif examples to this repository after those changes land.

All 6 comments

We've made some minor changes to the base classes internally to support Motif with RIBs. I'll work on porting those updates to this repo soon. I'll also add some Motif examples to this repository after those changes land.

Great, looking forward to it!

Hey @Leland-Takamine any updates? I'm working around the issue for now with my own RIBs fork, but I'd rather not put extra effort into making it good if there's official support coming soon.

Hi @larryng - Sorry for the delay on this. We are still in discussions internally regarding how we plan on upstreaming changes to this repository moving forward (if at all). Upstreaming support for Motif in particular is blocked on these discussions as our internal changes are a bit of a hack to maintain backwards compatibility. We'd need to decide whether to port the same changes to this repo or reimplement them "correctly" as breaking changes. I'd suggest sticking with your fork for now. We'll hopefully have an update on this soon.

Good to know. I'll keep working on my own hacky fork then. If you have any further updates, I'd appreciate it if you could please keep us posted. Thanks!

I have created a fork of the original uber-rib
Modified it and remove Rx and Dagger dependencies from it, the API will change a little bit, I have included an example also.
Soon I am going to add Rx as an extension
Also, Modifying the generator plugin to support Motif, Dagger and maybe other dependency injection libraries
*I have also migrated the code to Kotlin, here is the REPO:
https://github.com/mhammouri98/ribs-2

Was this page helpful?
0 / 5 - 0 ratings