Software Architecture Headache – Dependencies

I want to make my applications share data across devices, and do it even if the greater Internet is unavailable, if there’s a local network. So, peer-to-peer stuff. I went looking and found a framework that seems to be aimed directly at peer networking: LibP2P. There’s even a Swift implementation of it, sort of. Early days, anyway. The example app doesn’t build on my machine, though, as Swift has evolved a bit since the last code update.

I have gotten the example app to build, but in the process I wound up having to touch a lot of dependencies. So I decided to put together a diagram to see how all these darned things hang together. In the following diagram, the blue boxes are LibP2P libraries, while the black (uncolored) boxes are libraries from some other project. There are 16 blue boxes, in case you’re wondering, and these are just the libraries the example app uses from the LibP2P project. I’m not sure yet if there’s any point to all this other than me just standing here, staring at the picture and thinking, “Wow, this is a configuration nightmare!”

LibP2P dependencies

Published by pirateguillermo

I play the bagpipes. I program computers. I support my family in their various endeavors, and I enjoy my wonderful life.

Leave a Reply

To respond on your own website, enter the URL of your response which should contain a link to this post's permalink URL. Your response will then appear (possibly after moderation) on this page. Want to update or remove your response? Update or delete your post and re-enter your post's URL again. (Find out more about Webmentions.)

Discover more from Mechadarwin

Subscribe now to keep reading and get access to the full archive.

Continue reading