I’m developing a p2p file discovery and sharing platform in Golang

Developing an open-source p2p file discovery and sharing tool in Golang with the frontend in Java. Check it out here - https://github.com/gravetii/diztl

Hi guys,

So, I’m sure most of you here have heard of Apex DC++. I’ve used it in college and I must say it’s a pretty impressive and useful tool that works seamlessly to share and download files. Ever since then, I’ve always wanted to create something similar. After a lot of procrastination, I finally started working on the project.

The goal was to develop something that people in hostels or startup companies can use to find files of interest on other’s computers. It’s still far away from a completed product, but that’s only because I have a long list of features in the pipeline. Right now, a decent version of the product is already developed.

There are some more details in the README.md file of the project and so I’m not going to be verbose about it here.

If you’re interested in knowing more about the implementation, feel free to drop a comment and I’ll get back to you. There’s also a gitter channel that I keep looking at from time to time (mentioned in the README); you are welcome to drop a message there if that works for you.

I’ve spent quite a good deal of time on working on this project, so I wish to get some feedback from the programming community, and hence I’ve posted it here. So, please let me know what you think.



This is a really cool idea! Reminds me of the stories of the PDP-1 at MIT, when they installed a timesharing system. The “Incompatible Time Sharing System”, or ITSS, named as a parody of the inferior “Compatible Time Sharing System”, allowed users to see what others were working on. Naturally, there was an option for password-protection on files, but naturally, this only led the hackers at MIT to break the passwords (after all, anything worth hiding must be good, right? :wink:). I’d love to be able to recreate this sense of community and sharing within Hacker Noon.

What are you using for NAT traversal? That was always the biggest hurdle for me, when it came to implementing a P2P network. I’m actually going to be creating a P2P network of my own in the coming months, and I’m curious whether your solution would work for me as well (I’m currently planning on implementing the system in Rust).