[Ndn-interest] Version-controlled file-syncing/sharing (collaboration with git-annex?)

Nikos Fotiou fotiou at aueb.gr
Wed Apr 16 03:18:16 PDT 2025


As a side note https://github.com/pulsejet/ownly looks amazing. I love how it “hides” NDN from the end-user. Congratulations to the team.

Best,
Nikos

> On 16 Apr 2025, at 6:24 AM, Varun Patil via Ndn-interest <ndn-interest at lists.cs.ucla.edu> wrote:
> 
> Hi Kyra,
> 
>> Average users could get so much value out of a simple and intuitive p2p file-syncing service that is as polished as ResilioSync, provides revision control on arbitrary files like Abstract (version control for designers), but open source like LibreVault & SyncThing, plus backed by a distributed revision/version control system (DRCS/DVCS) like SparkleShare. This would be priceless for science, design, all sorts of collaborative workspaces, and especially for backups and data redundancy.
> 
> Yes, indeed. "Ownly" is one of the more recent NDN projects that is
> trying to build parts of this, albeit there is no version control at
> the moment (it is more directly intended to replace Google Docs and/or
> Overleaf, so the focus is on realtime collaborative editing). But it
> does, for instance, provide a p2p local-first (while supporting remote
> storage/backups with NDN repo) file sync service for a group of users,
> and the data can be end-to-end encrypted.
> 
> One note - since this needs a network layer change, the implementation
> does require a functional NDN overlay network; currently we use the
> global NDN testbed for this purpose [1]. But all of this software is
> open source and it is reasonably straightforward to set up an NDN
> overlay of your own, or (in the furture) peer with existing overlays
> like the internet.
> 
> I'll leave some references below --
> GitHub repo: https://github.com/pulsejet/ownly
> A slightly outdated design paper: https://arxiv.org/pdf/2407.15234v1
> The app itself: https://ownly.work
> 
>> Currently, git-annex depends on Tor and Magic Wormhole to share/collaborate/sync with others. There is Hypercore by Holepunch, but since an experiment for "Distributed Git over Named Data Networking" and npChat already exists, could a collaboration between Named-Data and git-annex allow for a built-in method for connections to be made for git-annex and set the foundation—pave the way—for the perfect file synchronization/sharing app?
> 
> I'm not familiar with the details of the GitSync experiment; others
> might chime in. But I want to note that the (IMO more important)
> problem that NDN solves is security in these distributed-decentralized
> apps, rather than just providing a p2p transport (which is just part
> of the puzzle). As for retrofitting existing applications with such a
> transport, this is possible in certain cases (e.g. for apps using a
> pub/sub API - replacing it with an NDN equivalent like SVS-PS [2]).
> But generally speaking this is non-trivial: NDN being a data-centric
> architecture has no "connections", but most existing app
> implementations are (unfortunately) too intricately tied up with the
> TCP/IP connection model.
> 
> [1] https://named-data.net/ndn-testbed/
> [2] https://named-data.net/wp-content/uploads/2022/03/Resilient_Brokerless_Publish-Subscribe_over_NDN.pdf
> 
> Best,
> Varun
> 
> On Tue, Apr 15, 2025 at 2:15 PM Kyra <hello at kyra.run> wrote:
>> 
>> 
>> Hello!
>> 
>> For wider discussion, I am cross-posting an idea I added to github here: https://github.com/named-data-mobile/ndn-photo-app/issues/186
>> 
>>> Average users could get so much value out of a simple and intuitive p2p file-syncing service that is as polished as ResilioSync, provides revision control on arbitrary files like Abstract (version control for designers), but open source like LibreVault & SyncThing, plus backed by a distributed revision/version control system (DRCS/DVCS)¹ like SparkleShare. This would be priceless for science, design, all sorts of collaborative workspaces, and especially for backups and data redundancy.
>>> 
>>> Currently, git-annex depends on Tor and Magic Wormhole to share/collaborate/sync with others. There is Hypercore by Holepunch, but since an experiment for "Distributed Git over Named Data Networking" and npChat already exists, could a collaboration between Named-Data and git-annex allow for a built-in method for connections to be made for git-annex and set the foundation—pave the way—for the perfect file synchronization/sharing app?
>>> 
>>> ¹ Although, it might be nice to use Pijul, which has efficint binary diffs and hopefully someday also word-by-word diffs (for example, to be the revision control system for a wiki)
>> 
>> 
>> Thanks,
>> Kyra
>> 
>> _______________________________________________
>> Ndn-interest mailing list
>> Ndn-interest at lists.cs.ucla.edu
>> https://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest
> _______________________________________________
> Ndn-interest mailing list
> Ndn-interest at lists.cs.ucla.edu
> https://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest



More information about the Ndn-interest mailing list