Framework PHP para criar servidores WebDAV, CalDAV e CardDAV e compartilhar arquivos, calendários e contatos.
tchapi/davis
Servidor CalDAV, CardDAV e WebDAV auto-hospedado, com painel web de administração baseado em Symfony para gerenciar usuários, calendários e agendas de contatos.
Alternativa open source a:Google Calendar
- Estrelas
- 763
- Forks
- 44
- Issues abertas
- 13
- Último commit
- ontem
O que é?
Davis é um servidor DAV com painel de administração, desenvolvido com sabre/dav e Symfony 7. Ele permite criar usuários, calendários e agendas de contatos, compartilhar calendários com outros usuários e gerenciar tudo por uma interface responsiva em Bootstrap 5, com modos claro e escuro. É uma alternativa ao Baïkal, e o esquema do banco de dados pode ser migrado de uma instalação existente do Baïkal.
No nível dos protocolos, o servidor oferece suporte a CalDAV, CardDAV e WebDAV, com compartilhamento de calendários, agendamento e assinaturas no servidor, quando o cliente oferece suporte a esses recursos. A autenticação pode usar HTTP Basic ou IMAP e LDAP por meio de provedores externos. Os recursos adicionais incluem calendários públicos acessíveis por link e um calendário de aniversários automático, atualizado quando as datas de nascimento dos contatos mudam.
O Davis inclui um Dockerfile, um exemplo de configuração do docker-compose e imagens pré-compiladas (uma delas com um proxy reverso Caddy incluído), além de um pacote e um módulo para NixOS. Oferece suporte a MySQL/MariaDB, PostgreSQL e SQLite e inclui uma REST API para gerenciamento de usuários e calendários.
Recursos principais
- 01Painel web para criar usuários, calendários e agendas de contatos, com compartilhamento de calendários
- 02Oferece suporte a CalDAV, CardDAV e WebDAV, além de agendamento e notificações por e-mail
- 03Autenticação via HTTP Basic, IMAP ou LDAP
- 04Calendários públicos que podem ser compartilhados por link
- 05Calendário de aniversários automático, sincronizado com os contatos
- 06Imagens Docker e módulo para NixOS para implantação
Casos de uso
- Hospedar sua própria sincronização de calendários e contatos para celulares e clientes desktop
- Substituir o Baïkal por um servidor com uma interface de administração mais moderna
- Oferecer calendários e agendas de contatos compartilhados a uma equipe pequena em um servidor privado
- Executar um backend DAV atrás de um login com SSO ou IMAP/LDAP
Início rápido
- 1
Clone o repositório
- 2
Instale as dependências do PHP com o Composer
composer install - 3
Configure o driver e a URL do banco de dados em .env.local
- 4
Execute as migrações do banco de dados
bin/console doctrine:migrations:migrate
Antes de usar
- Requer PHP 8.2 ou mais recente com as extensões pdo_mysql, gd e intl, além do Composer 2.
- PostgreSQL e SQLite não foram testados extensivamente; recomenda-se MySQL ou MariaDB.
- A autenticação IMAP e LDAP requer extensões adicionais do PHP, que não vêm habilitadas por padrão fora da imagem Docker.
Em coleções
Tópicos
Perguntas frequentes
- O que é davis?
- Servidor CalDAV, CardDAV e WebDAV auto-hospedado, com painel web de administração baseado em Symfony para gerenciar usuários, calendários e agendas de contatos. Davis é um servidor DAV com painel de administração, desenvolvido com sabre/dav e Symfony 7. Ele permite criar usuários, calendários e agendas de contatos, compartilhar calendários com outros usuários e gerenciar tudo por uma interface responsiva em Bootstrap 5, com modos claro e escuro. É uma alternativa ao Baïkal, e o esquema do banco de dados pode ser migrado de uma instalação existente do Baïkal.
- davis é gratuito? Qual é a licença?
- davis é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- davis ainda é mantido?
- Manutenção ativa. O último commit de davis foi em 5 de nov. de 2026.
- Para que posso usar davis?
- Hospedar sua própria sincronização de calendários e contatos para celulares e clientes desktop Substituir o Baïkal por um servidor com uma interface de administração mais moderna Oferecer calendários e agendas de contatos compartilhados a uma equipe pequena em um servidor privado Executar um backend DAV atrás de um login com SSO ou IMAP/LDAP
- Como instalar davis?
- Clone o repositório Instale as dependências do PHP com o Composer: composer install Configure o driver e a URL do banco de dados em .env.local Execute as migrações do banco de dados: bin/console doctrine:migrations:migrate
- Onde consigo davis?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/tchapi/davis
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Servidor CalDAV e CardDAV auto-hospedado para sincronizar calendários e contatos entre dispositivos e aplicativos.
Um servidor CalDAV e CardDAV compacto em Python para compartilhar calendários, listas de tarefas e contatos com clientes compatíveis.
Servidor CalDAV/CardDAV escrito em Rust que armazena calendários e contatos em um único banco de dados SQLite.
Um cliente de calendário leve e local-first para navegador, com sincronização com servidores CalDAV, CardDAV e JMAP configurados por você.
Servidor completo de e-mail e colaboração, auto-hospedável e escrito em Rust, com suporte a IMAP, JMAP, POP3, SMTP, CalDAV, CardDAV e WebDAV.