Crates.io | ipfs-webdav |
lib.rs | ipfs-webdav |
version | 0.2.0 |
source | src |
created_at | 2022-10-07 19:54:24.586491 |
updated_at | 2023-11-09 17:55:56.364822 |
description | A WebDAV server that enables direct access to IPFS MFS as a mounted drive |
homepage | https://debox.network/ipfs-webdav |
repository | https://github.com/debox-network/ipfs-webdav |
max_upload_size | |
id | 683051 |
size | 255,505 |
ipfs-webdav is a WebDAV server that enables direct access to IPFS's MFS as a mounted drive. It enables users to interface with the MFS directly through a file explorer or terminal.
Even though IPFS currently offers the ability to mount an IPFS file system, it is still experimental and limited to read-only access. ipfs-webdav offers a convenient way for read/write access to the files stored on your local IPFS node without having to interact with IPFS, either through the web-ui or cli.
Before installing ipfs-webdav make sure that the following dependencies are installed:
Once all the dependencies are installed, refer to the follow steps to install ipfs-webdav
:
git clone https://github.com/debox-network/ipfs-webdav
cd ipfs-webdav
cargo build --package ipfs-webdav --example base --release
Once ipfs-webdav is installed on your system, run the project:
ipfs daemon
cd target/release/examples && ./base
Once both the IPFS daemon and ipfs-webdav daemon are running, the WebDAV filesystem can be mounted for immediate use. The mounting instructions differ slightly based on your OS. Refer to the appropriate set of instructions below.
+ Other Locations
on the bottom of the left paneldav://127.0.0.1:4918
on the bottom bar where the Enter server address...
prompt is127.0.0.1:4918
sudo apt-get install davfs2
sudo mkdir /mnt/dav
sudo mount -t davfs http://127.0.0.1:4918 /mnt/dav
TBD
TBD
ipfs-webdav implements the base RFC4918 WebDAV specification.
The official standard for testing any WebDAV implementation is litmus. All tests will be run using it.
To get started, first install Litmus:
curl -O http://www.webdav.org/neon/litmus/litmus-0.13.tar.gz
tar xf litmus-0.13.tar.gz
cd litmus-0.13
./configure
make
Once Litmus is installed, run it to test ipfs-webdav: litmus dav://127.0.0.1:4918
(Truncated to exclude individual tests)
-> running `basic':
...
<- summary for `basic': of 16 tests run: 16 passed, 0 failed. 100.0%
-> running `copymove':
...
<- summary for `copymove': of 13 tests run: 13 passed, 0 failed. 100.0%
-> running `props':
...
<- summary for `props': of 30 tests run: 30 passed, 0 failed. 100.0%
-> running `locks':
...
<- summary for `locks': of 41 tests run: 41 passed, 0 failed. 100.0%
-> running `http':
...
<- summary for `http': of 4 tests run: 4 passed, 0 failed. 100.0%
Much of the WebDAV functionality is based on webdav-handler. Big thanks to Miquel for his ongoing work in creating/maintaining an elegant rust implementation of the WebDAV protocol.
ipfs-api is a great rust implementation of the IPFS RPC API, which tremendously helped in interfacing with IPFS.
Licensed under either of
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.