New FUSE git fs

Hi,

I’m looking for information on how to use github and/or git in general as a backend for FUSE. I’m writing a custom fuse service which offers a browseable directory offering access to all kinds of resources like:

  • sftp server over SSH
  • smb server using libsmb2
  • webdav

other things are possible like:

  • text/video chat with others in the same domain
  • backup (system and user)
  • api for apps to connect to servers over SSH (using forward/direct)

See: GitHub - stefbon/OSNS: Open Secure Network Services

Now I’m looking for documentation how the github / git api works and what I have to do to create a FUSE fs for it. I know there is already a gitfs, but that is in python. My project is written in C.
So first: is the api used by github the same as git?
And: can you point meto the relevant documentation?

I want to add that my service uses an own written ssh client (and server) library, so a connection over SSH is possible. I think that makes it easier: all io is done over a ssh channel.

Thanks in advance,

Stef Bon