Could my project benefit from libp2p?

Hello community.

I’m building a little tool to help developers share code snippets with each other without leaving the comfort of their terminals, IDE, editor, whatever.

The idea behind it is very simple:
Be the most convenient tool to share a file or a snippet of code with another person (period)

How?
I built a handy CLI program to achieve this with some bonus bells and whistles. Please consider taking a look: GitHub - fabricio7p/gistit: Easy code snippet sharing.

TLDR;
You:

  1. Pass a file as input with some optional parameters like password, author name, description, and colorscheme.
  2. It gets hashed and sent to centralized server
  3. You send the hash to your friend

Your friend:

  1. Runs the cli passing the hash as parameter and previews the snippet directly in the terminal with syntax highlighting, or save it locally.

Since the whole point is being convenient and end copy/pasting code in inadequate places. We also have some ideas in mind:

  • auto copy hash to clipboard (working)
  • web app to preview online
  • build IDE extensions for non TUI users, e.g. Vscode, IntelliJ, …

Currently the application runs on centralized Firebase functions and I’m interested in knowing if libp2p is the right choice to make this idea work on a decentralized context. Please leave your thoughts.

The part that concerns me are NAT traversal and decentralized storage, although the storage wouldn’t need to be persistent… snippets should have a limited life time

libp2p is for sure worth a shot if you want to go decentralized :slight_smile:

For NAT traversal:

For decentralized storage:

  • Looks like IPFS would be an ideal fit.