Primeiros Passos
Opção 1: Docker (Recomendado)
A maneira mais fácil de executar Bonds é com Docker:
bash
# Transferir docker-compose.yml
curl -O https://raw.githubusercontent.com/naiba/bonds/main/docker-compose.yml
# Gere e exporte um segredo JWT de 256 bits neste shell
export JWT_SECRET="$(openssl rand -hex 32)"
# Iniciar o serviço
docker compose up -dAbra http://localhost:8080 e crie a sua conta.
Gere o segredo uma vez, guarde-o num ambiente protegido ou gestor de segredos e reutilize o mesmo valor em cada reinício. Planeie a rotação do JWT: invalida sessões existentes e pode exigir a reintrodução das credenciais de subscrições DAV, pois a respetiva encriptação deriva deste segredo.
Armazenamento Persistente
O docker-compose.yml padrão monta um volume para a base de dados SQLite e ficheiros carregados. Os seus dados persistem entre reinícios do contentor.
Opção 2: Binário Pré-compilado
Transfira a versão mais recente dos Lançamentos no GitHub:
bash
# Gere o segredo JWT uma vez, guarde-o em segurança e reutilize-o
export JWT_SECRET="$(openssl rand -hex 32)"
export APP_ENV=production
# Executar o servidor
./bonds-serverO servidor inicia em http://localhost:8080 com frontend incorporado e base de dados SQLite.
Diretorias de Dados
Por padrão, Bonds armazena dados na diretoria de trabalho:
| Caminho | Propósito |
|---|---|
bonds.db | Base de dados SQLite |
uploads/ | Ficheiros carregados (fotos, documentos) |
data/bonds.bleve/ | Índice de pesquisa de texto completo |
data/backups/ | Backups automáticos |
Opção 3: Compilar a Partir do Código Fonte
Pré-requisitos: Go 1.25+, Bun 1.x
bash
git clone https://github.com/naiba/bonds.git
cd bonds
# Instalar dependências
make setup
# Compilar um único binário (frontend incorporado)
make build-all
# Executar
export JWT_SECRET="$(openssl rand -hex 32)"
./server/bin/bonds-serverPrimeiros Passos Após o Login
::: dica Primeiro Utilizador = Administrador da Instância O primeiro utilizador a registar-se numa nova instância Bonds recebe automaticamente privilégios de administrador da instância. Este utilizador pode aceder ao painel de administração para gerir definições do sistema, outros utilizadores e backups. Administradores adicionais podem ser promovidos a partir do painel de administração. :::
- Crie um Cofre — Cofres são contentores isolados para os seus contactos. Pode criar um para "Família", outro para "Trabalho".
- Adicione Contactos — Crie contactos dentro de um cofre. Adicione detalhes, fotos, notas.
- Configure Lembretes — Nunca esqueça um aniversário ou data importante. Configure notificações por email ou Telegram.
- Convide Outros — Compartilhe um cofre com familiares enviando convites por email com níveis de permissão apropriados.
Requisitos de Sistema
- CPU: Qualquer processador 64 bits moderno
- RAM: ~50 MB em repouso, escala com o uso
- Disco: Mínimo; depende dos ficheiros carregados
- SO: Linux (amd64, arm64), macOS, Windows
- Base de dados: SQLite (incluído) ou PostgreSQL 14+