ipfs / community

Discussion and documentation on community practices
https://docs.ipfs.tech/community/
MIT License
417 stars 226 forks source link

[JavaScript] Mono Repos #174

Closed dignifiedquire closed 7 years ago

dignifiedquire commented 8 years ago

In the past weeks there has been a growing pain for developer of js-ipfs, js-libp2p and all associated modules due to the amount of different packages and modules. As these modules are very connected and have often strong dependencies on each other in terms of public api, changing those is a long and complicated process currently.

The second pain point we have seen is a confusion of developers trying to find some details about the project, and not knowing where to go, given that there are so many different repos each with their own specific functionality and scope.

I want here to start a discussion around a mono repos, which have been used in the JavaScript community successfully to ease some of these pains, while still maintaing to have code modularised and published into many individual packages onto npm. Two examples of this are pouchdb and babel.

Please share your thoughts, fears and pain points below :)

victorb commented 8 years ago

Let's do cons/pros!

Pros for having a monolith project

Cons for having a monolith project

Some quick thoughts, might be expanded later on. Let me know if there is something I wrote that is completely wrong.

whyrusleeping commented 8 years ago

Cons

jbenet commented 8 years ago

No. We're just finally getting away from the pain of the massive go-ipfs repo-- where all issues and code is so hard to navigate. js-ipfs has the pleasant state that all issues, CI, PRs, commit access, etc., are well-scoped to the repos they belong to, and contributors need only understand small pieces at a time.

Modularization for us is about carefully scoping issues, CI, permissions, READMEs, and so on. Not just about publishing to npm. This is absolutely key for the reuse of our modules in other projects.

Ways to achieve what you want:

daviddias commented 7 years ago

We are not going to pursue monorepo structures for all the cons presented. Closing this issue for now.