File: README.md

Recommend this page to a friend!
  Classes of Dom Hastings  >  JS Webdav Client  >  README.md  >  Download  
File: README.md
Role: Documentation
Content type: text/markdown
Description: Documentation
Class: JS Webdav Client
Access files of a Webdav server
Author: By
Last change: Bump to version 2.0.0.

- Fix missing title for uploaded file success toast.
- Fix tests.
- Update `README.md`.
- Add `TODO.md`.
- Update `index.html`.
Further bugfixes and improvements.

- Fix `font-size` for users who have changed the default font.
- IE11 compatibility.
Rewritten from the ground up using ES modules and trying to separate the
UI from the core functionality.

- Rewote code and organised into ES modules.
- Remove jQuery dependency (#30).
- Add keyboard navigation.
- Switch WebDAV test container to Alpine Linux.
- Add `eslint` for code style validation.
- Add `karma`/`jasmine` for testing.
- Add `.babelrc`.
- Add some basic unit tests.
- Rework `package.json` scripts.
- Add `Webpack` for building.
- Remove inlined external assets to resolve as module dependencies.
- Update document title on navigation
- Add toasts to notify of errors (#49).
- Add `.gitattributes` file to avoid CSS being counted incorrectly on
GitHub.
- Add `EventObject` class for handling events within the UI.
- Add a check (`HEAD` request) before trying to show images, fonts,
videos, audio to prevent invalid lightbox from showing up.
- Update `.editorconfig`.
- Add `stylelint`.
Date: 1 month ago
Size: 2,955 bytes
 

Contents

Class file image Download

webdav-js

A simple way to administer a WebDAV filesystem from your browser.

The original aim for this project was to provide a bookmarklet for use when you want to administer a WebDAV server, without the need for using a third party application.

The application has since been rewritten to not rely on jQuery and use more modern methods and provide a single runtime file. Now that there's more separation between the interface code and the library code, I'd like to investigate using other frontend approaches to see which I prefer (and also to weigh up the differences between the currently available frameworks). There's still work to do around code separation andhopefully this will be something I can continue to work on (as time allows) I feel it's at least as stable as the previous version.

Tested in:

  • Chrome
  • Firefox
  • Edge
  • IE11 (I may drop support for this to reduce the package size in the future - unless anyone REALY needs it?)

Implementations

Bookmarklet:


or drag this link directly

### Apache:

There is also an example for how you could set up Apache in the `examples/` directory (one using a locally hosted
version of the library, and one using a CDN).

Think you have another example implementation that would be good to showcase?
Fork this repository and make a PR!


## Test the library

Included in the package is a `docker-compose.yml` file that can spawn an Alpine Linux Apache WebDAV server that uses the
example Apache configuration so you can see the library in action if you don't have a WebDAV server at your disposal.

To start it, run:

    docker-compose up

and navigate to `http://localhost:8080/`.


## Contributing

If you feel this can be improved (I'm certain it can!), please feel free to fork it and submit a PR.

To start making changes, ensure you install all the dependencies:

    yarn install # or npm install

After making changes, ensure you rebuild the application:

    yarn build # or npm run build

Once your changes have compiled you can test using the Docker container.


### Unit Tests

To run the unit tests:

    docker-compose run --workdir=/src --rm test yarn test