This extension is part of the Sinatra::Contrib project. Run gem install sinatra-contrib to have it available.

Sinatra::WebDAV

This extensions provides WebDAV verbs, as defined by RFC 4918 (tools.ietf.org/html/rfc4918). To use this in your app, just register it:

require 'sinatra/base'
require 'sinatra/webdav'

class Application < Sinatra::Base
  register Sinatra::WebDAV

  # Now you can use any WebDAV verb:
  propfind '/2014/january/21' do
    'I have a lunch at 9 PM'
  end
end

You can use it in classic application just by requiring the extension:

require 'sinatra'
require 'sinatra/webdav'

mkcol '/2015' do
  'You started 2015!'
end