ファイル、カレンダー、連絡先を共有するWebDAV、CalDAV、CardDAVサーバーを構築するためのPHPフレームワーク。
tchapi/davis
ユーザー、カレンダー、アドレス帳を管理できる、SymfonyベースのWeb管理画面を備えたセルフホスト型CalDAV・CardDAV・WebDAVサーバー。
代替できる製品:Google Calendar
- スター
- 763
- フォーク
- 44
- 未解決の Issue
- 13
- 最終コミット
- 昨日
これは何?
Davisは、sabre/davとSymfony 7をベースにした、管理ダッシュボード付きのDAVサーバーです。ユーザー、カレンダー、アドレス帳を作成したり、カレンダーをほかのユーザーと共有したりできます。ライトモードとダークモードを備えた、レスポンシブなBootstrap 5のインターフェースから一元管理できます。Baïkalの代替として利用でき、既存のBaïkalインストール環境からデータベーススキーマを移行できます。
プロトコル面ではCalDAV、CardDAV、WebDAVに対応し、クライアントが対応していれば、カレンダー共有、スケジューリング、サーバー側のサブスクリプションも利用できます。認証にはHTTP Basicのほか、外部プロバイダーを介したIMAPやLDAPを使用できます。そのほか、リンクからアクセスできる公開カレンダーや、連絡先の誕生日が変更されると自動更新される誕生日カレンダーも備えています。
DavisにはDockerfile、サンプルのdocker-compose構成、ビルド済みイメージ(Caddyのリバースプロキシを同梱したものも含む)が用意されており、NixOSのパッケージとモジュールもあります。MySQL/MariaDB、PostgreSQL、SQLiteに対応し、ユーザーとカレンダーを管理するREST APIも備えています。
主な機能
- 01ユーザー、カレンダー、アドレス帳の作成とカレンダー共有に対応したWebダッシュボード
- 02CalDAV、CardDAV、WebDAVに対応し、スケジューリングとメール通知も利用可能
- 03HTTP Basic、IMAP、LDAPによる認証
- 04リンクで共有できる公開カレンダー
- 05連絡先の情報と同期する自動誕生日カレンダー
- 06デプロイ用のDockerイメージとNixOSモジュール
ユースケース
- スマートフォンやデスクトップクライアント向けに、カレンダーと連絡先の同期環境を自前で運用する
- よりモダンな管理画面を備えたサーバーにBaïkalから移行する
- プライベートサーバー上で、小規模チームに共有カレンダーとアドレス帳を提供する
- SSOまたはIMAP/LDAPログインの背後でDAVバックエンドを運用する
クイックスタート
- 1
リポジトリをクローンする
- 2
ComposerでPHPの依存関係をインストールする
composer install - 3
.env.localでデータベースドライバーとURLを設定する
- 4
データベースのマイグレーションを実行する
bin/console doctrine:migrations:migrate
使う前に知っておきたいこと
- PHP 8.2以降、pdo_mysql、gd、intl拡張機能、およびComposer 2が必要です。
- PostgreSQLとSQLiteは十分にテストされていません。MySQLまたはMariaDBを推奨します。
- IMAPおよびLDAP認証には追加のPHP拡張機能が必要です。これらはDockerイメージ以外ではデフォルトで有効になっていません。
収録されている特集
トピック
よくある質問
- davis とは?
- ユーザー、カレンダー、アドレス帳を管理できる、SymfonyベースのWeb管理画面を備えたセルフホスト型CalDAV・CardDAV・WebDAVサーバー。 Davisは、sabre/davとSymfony 7をベースにした、管理ダッシュボード付きのDAVサーバーです。ユーザー、カレンダー、アドレス帳を作成したり、カレンダーをほかのユーザーと共有したりできます。ライトモードとダークモードを備えた、レスポンシブなBootstrap 5のインターフェースから一元管理できます。Baïkalの代替として利用でき、既存のBaïkalインストール環境からデータベーススキーマを移行できます。
- davis は無料で使えますか?ライセンスは?
- davis は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- davis は今もメンテナンスされていますか?
- 活発にメンテナンス中。davis の最終コミットは 2026年11月5日 です。
- davis は何に使えますか?
- スマートフォンやデスクトップクライアント向けに、カレンダーと連絡先の同期環境を自前で運用する よりモダンな管理画面を備えたサーバーにBaïkalから移行する プライベートサーバー上で、小規模チームに共有カレンダーとアドレス帳を提供する SSOまたはIMAP/LDAPログインの背後でDAVバックエンドを運用する
- davis のインストール方法は?
- リポジトリをクローンする ComposerでPHPの依存関係をインストールする: composer install .env.localでデータベースドライバーとURLを設定する データベースのマイグレーションを実行する: bin/console doctrine:migrations:migrate
- davis はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/tchapi/davis
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
デバイスやアプリ間でカレンダーと連絡先を同期できる、セルフホスト型のCalDAV/CardDAVサーバー。
標準的なクライアントとカレンダー、ToDoリスト、連絡先を共有できる、小規模なPython製CalDAV・CardDAVサーバー。
カレンダーと連絡先を単一のSQLiteデータベースに保存する、Rust製のCalDAV/CardDAVサーバー。
設定したCalDAV、CardDAV、JMAPサーバーと同期できる、軽量でローカルファーストなブラウザ向けカレンダークライアント。
IMAP、JMAP、POP3、SMTP、CalDAV、CardDAV、WebDAVに対応した、Rust製のセルフホスト可能なオールインワンのメール・コラボレーションサーバー。