iroh-gateway

Crates.ioiroh-gateway
lib.rsiroh-gateway
version0.2.0
sourcesrc
created_at2022-11-28 19:02:40.371387
updated_at2022-12-21 17:05:57.168686
descriptionIPFS gateway
homepage
repositoryhttps://github.com/n0-computer/iroh
max_upload_size
id724700
size361,371
Friedel Ziegelmayer (dignifiedquire)

documentation

README

iroh gateway

crates.io Released API docs MIT/Apache-2.0 licensed CI

A Rust implementation of an IPFS gateway based on iroh. An IPFS gateway allows you to access content on the IPFS network over HTTP.

Running / Building

cargo run -- -p 10000

Options

  • Run with cargo run -- -h for details
  • -wcf Writeable, Cache, Fetch (options to toggle write enable, caching mechanics and fetching from the network); currently exists but is not implemented
  • -p Port the gateway should listen on

ENV Variables

  • IROH_INSTANCE_ID - unique instance identifier, preferably some name than hard id (default: generated lower & snake case name)
  • IROH_ENV - indicates the service environment (default: dev)

Endpoints

Endpoint Flag Description Default
/ipfs/:cid & /ipfs/:cid/:path ?format={"", "fs", "raw", "car"} Specifies the serving format & content-type ""/fs
?filename=DESIRED_FILE_NAME Specifies a filename for the attachment {cid}.bin
?download={true, false} Sets content-disposition to attachment, browser prompts to save file instead of loading false
?force_dir={true, false} Lists unixFS directories even if they contain an index.html file false
?uri=ENCODED_URL Query parameter to handle navigator.registerProtocolHandler Web API ie. ipfs:// ""

License

Licensed under either of Apache License, Version 2.0 or MIT license at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this crate by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Commit count: 1304

cargo fmt