# IPFS-client sync Links: - [Libipfsclient c library - design/braindump](https://hackmd.io/DhsiQCV7RCKS95skOi94OQ) - [IPFS Client API braindump](https://hackmd.io/-D9W6kW1Sd6aAXDexYtTnQ) - [IPFS Client-native Connectivity](https://hackmd.io/rxFtUuTdRTO4-nyAxPHNqQ) - [ipfs-client js repo WIP](https://github.com/meandavejustice/ipfs-client) ## 9/8/2022 Topics: - what does wrapping the http response into file api-like object look like? - What gateways are we setting for our default? ``` const DEFAULT_GATEWAY_LIST = [ { host: 'dweb.link', healthy: true, remote: true }, { host: 'cf-ipfs.com', healthy: true, remote: true } ]; ``` - Let's document the criteria for a gateway to be included here - supports subdomains - supports dnslink - Links to discussion of a 2.0, discoverable gateways, content verification etc... - Do we have a link to libipfsclient c library repo? Action Items: - dave: - what is the security issue with subdomains? cUrl does not want it, because of untrusted redirects. - try out ipfs-cat to pipe buffer to another program - mark: - compare node fs and c functions. API: `transform / share ?`: do we want to expose this? A function that will take `ipfs://cid etc` to `https://gateway/ipfs/cid` `open`: Looks up the cid on IPFS network, https://nodejs.org/api/fs.html#class-filehandle `read`: return buffer, gateway url `seek`: in nodejs this may look like [fs.readv](https://nodejs.org/api/fs.html#fsreadvfd-buffers-position-callback) ### Further ideas: - `ipfs-cat`: cli tool, accepts cid, outputs buffer that can be piped to another program