Epoxy: [Feature request] Model documentation generator.

Created on 4 Sep 2018  路  3Comments  路  Source: airbnb/epoxy

Hi! First of all, thanks for creating and open sourcing Epoxy, it really simplifies and optimizes developing features.

After extending the usage of Epoxy in a large app, and building dozens of components, we're facing a situation where sometimes models are duplicated because of members of the team don't realize they already exist.

Our suggestion would be to take advantage of the annotations and generate a centralized documentation or model catalog.

A similar tool in the react world could be React docgen

Thanks so much again for this awesome project!

help wanted

Most helpful comment

Hey, glad you're finding Epoxy useful, and thanks for the suggestion. We actually have a fairly sophisticated version of this for our team where we have automatic screenshots, documentation, and uploading to a website. We're unlikely to upload that any time soon though.

The epoxy annotations are all kept in the class files though, so it would be possible for anybody to write another annotation processor to process them and create this documentation - it would function perfectly well outside of Epoxy as a separate library.

I'm unlikely to work on this, but I'd be happy to advise or code review somebody else's work on it!

All 3 comments

Hey, glad you're finding Epoxy useful, and thanks for the suggestion. We actually have a fairly sophisticated version of this for our team where we have automatic screenshots, documentation, and uploading to a website. We're unlikely to upload that any time soon though.

The epoxy annotations are all kept in the class files though, so it would be possible for anybody to write another annotation processor to process them and create this documentation - it would function perfectly well outside of Epoxy as a separate library.

I'm unlikely to work on this, but I'd be happy to advise or code review somebody else's work on it!

This seems interesting and something I'd consider tackling. It's a good-to-have for my team as well.

@carlosmuvi What kind of documentation would this be? Would this be like a JavaDoc/KDoc? Or something more sophisticated?

Thanks, @elihart !

@shaishavgandhi05 My original thinking was to build something similar to a storybook (https://github.com/storybooks/storybook), and I'm more than happy to collaborate building an annotation processor for it!

Definitely, just Java/KDocs would be a great starting, but a more complete framework that ends up in some kind of catalog with the component screenshot, available props, and a simple description would be really powerful.

Was this page helpful?
0 / 5 - 0 ratings