Hysen Labs
Library / SDK
sara-nl/js-webdav-client avatar
sara-nl

js-webdav-client

A low-level webDAV client library written in/for JavaScript

100 stars15 forksJavaScriptGPL-3.0
01
DEEP OPEN-SOURCE ANALYSIS

js-webdav-client: a low-level WebDAV client for browsers

A low-level WebDAV client library written in JavaScript, built to support BeeHub's built-in client and to follow RFC 4918. The README explains the file layout and how to develop against the source.

02
DEEP OPEN-SOURCE ANALYSIS

Built for BeeHub, open to the standard

The library's stated purpose is to support the built-in client for BeeHub, a project by the same team. Beyond that, the authors try to follow the WebDAV RFC 4918, and contributions toward this and other WebDAV standards are explicitly welcome. So it is a private driver that happens to be released in the open. WebDAV support is the point of the library, since BeeHub depends on it for its built-in client.

03
DEEP OPEN-SOURCE ANALYSIS

What each file is for

The README walks the repository layout. COPYING.LESSER.txt holds the GNU LGPL, LICENSE.txt holds the GNU GPL, and the Makefile builds the whole library into a single file. Source for the basic library sits in src, and src/plugins holds plugin directories such as the ACL plugin.

04
DEEP OPEN-SOURCE ANALYSIS

Developing against the source

For working on the library itself, the README suggests linking the source files directly from an HTML page, adding each needed file by hand with a script tag. Order matters: files in src get included in sorted order, so the header file goes first, then the exception file, then the IE hacks file, followed by the rest. Plugin directories come after, also sorted.

05
DEEP OPEN-SOURCE ANALYSIS

Making a distributable file

To use the library from other scripts, you build a single file containing the complete library, such as a dist file. That file can be renamed and placed anywhere in a public folder, as long as the script tag is updated to match. It is a deliberately simple distribution story.

07
DEEP OPEN-SOURCE ANALYSIS

Official sources

08
Community notes

Community notes