I have noticed that there are quite a lot of similar topics where people want to integrate external systems which make sense to be combined with IPFS. Because of the monolith design of go-ipfs it needs to be authorized and approved since it will be included in the core one way or another. And that’s understandable but…
What if we create a portable modular kit based on go-ipfs where everyone can create a fork and integrate easily without affecting the core? That way we would have custom user versions with different sets of services exposed and it will make the whole ecosystem more open.
In my case I currently need an integration of orbit-db so that I can call it directly from the shell because my client app is in Web Assembly and so it doesn’t have access to the host OS resources that orbit needs to establish the connection.
A rough estimation of number of packages I need to change in case I do it as forks is 5 or 6 which proves how monolith the current architecture of go-ipfs is. Maybe it made a lot of sense back in 2015 and in the context of a decentralized file system but this prevents its own growth and adoption rate beyond the original scope.
Here is an issue created where we can talk about it further: