🔪 A contact, calendar, task list and file server, synced, everywhere, all the time
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.

README.md

Please note

This project is alpha quality. We don't yet guarantee stability, data integrity or a clean upgrade path. Only use this project if you are interested in experimenting with it.

K (sabre/katana's logo)

sabre/katana is a contact, calendar, task list and file server. Based on standards used worldwide (respectively CardDAV, CalDAV and WebDAV), sabre/katana will sync your data between any devices, from everywhere, every time. It lets you manage users and their data in a minute. sabre/katana is powered by sabre/dav, an open source technology trusted by the likes of Atmail, Box, fruux and ownCloud.

Features

Once sabre/katana has been installed, you will be able to manage:

  • Users
  • Address books
  • Calendars
  • Task lists
  • Files

More than 35 RFCs are supported. See the exhaustive list of all supported standars. This includes: vCard 4.0, iCalendar 2.0, jCal, jCard, iTip, iMip, ACL etc.

Overview of features:

  • WebDAV: Principals, users, HTTP authentification, ACL and synchronization
  • Address books: VCF export
  • Calendars: ICS export, scheduling (iTIP and iMIP, respectively invite attendees that are registered on your server or not)
  • Task lists: ICS export
  • Files: Home collection, public directory, locks

Screenshots

Easy step-by-step installation through a wizard:

Installation in the browser

You are also able to install in CLI:

Installation in the terminal

The login page, first step to manage your sabre/katana server:

Login page

List of users on the left:

List of users

When creating a new user, 1 address book, 2 calendars, 1 task list and 1 home collection (with a public directory) will be automatically created:

New user

You are able to create, edit, delete or download address books:

List of address books

You are also able to create, edit, delete or download calendars and task lists:

List of calendars

You can explore the home collection of a user. Notice the public directory - files put inside are accessible to anyone but no listing is available:

List of files

Manage your settings easily:

Settings

Attendees can be invited to an event even if they are not registered on your sabre/katana server by automatically sending an email:

Invite_attendees_by_email

Install

If you downloaded sabre/katana as an archive, skip the pre-requisites.

Pre-requisites

To grab dependencies of the project, make sure you have Composer, Bower and NPM installed, and then run:

$ make install

(Note: You can run make clean to clean extra files needed for the installation).

Then, to install sabre/katana, you have two options.

In your browser

You need to start an HTTP server; example with the PHP built-in server:

$ php -S 127.0.0.1:8888 -t public public/.webserver.php

Then open http://127.0.0.1:8888/install.php in your browser, you will be redirected to the installation page.

In your terminal

You need to execute the following command:

$ bin/katana install

Update

To update sabre/katana, you have two options.

In your browser

So far, only a message will prompt you, indicating how to update manually. We are working on an automatic update in the browser.

In your terminal

  1. First solution is manual but more common. It requires a ZIP archive. Download the latest versions with the following command:

    $ bin/katana update --fetch-zip

    You will find the archives in the data/share/update/ directory. To finish updating sabre/katana, simply run:

    $ unzip -u data/share/update/katana_vx.y.z.zip -d .
  2. Second solution is automatic but less common. It requires a PHAR archive. Download the latest versions with the following command:

    $ bin/katana update --fetch

    You will also find the archives in the data/share/update/ directory. To finish updating sabre/katana, simply run:

    $ bin/katana update --apply data/share/update/katana_vx.y.z.phar

    The PHAR is executable. For instance:

    $ php data/share/update/katana_vx.y.z.phar --signature

    or

    $ php data/share/update/katana_vx.y.z.phar --metadata

    will respectively print the signature and the metadata of this version. Use -h, -? or --help to get help.

Supported technologies

So far, sabre/katana can be installed with SQLite or MySQL. It works in all major browsers, except prior versions of IE9.

Build status

branch status
master Build Status

Questions?

Head over to the sabre/dav mailinglist, or you can also just open a ticket on GitHub.

Made at fruux

sabre/katana is being developed by fruux. Drop us a line for commercial services or enterprise support.