5.4 KiB
5.4 KiB
Setup em Novo Computador
Guia rapido para configurar o ambiente de desenvolvimento em uma nova maquina.
Pre-requisitos
- Git instalado
- Bun 1.3+ (bun.sh)
- Docker (para PostgreSQL local)
- Node.js 20+ (opcional, para algumas ferramentas)
Instalar Bun (se ainda nao tiver)
# Linux/macOS/WSL
curl -fsSL https://bun.sh/install | bash
# Windows (PowerShell)
powershell -c "irm bun.sh/install.ps1 | iex"
Configurar Autenticacao (Repositorio Privado)
Se o repositorio for privado, configure autenticacao SSH antes de clonar.
Opcao 1: SSH Key (Recomendado)
# 1. Gerar chave SSH (se nao tiver)
ssh-keygen -t ed25519 -C "seu-email@exemplo.com"
# Pressione Enter para aceitar o local padrao
# Defina uma senha ou deixe em branco
# 2. Copiar a chave publica
# Linux/macOS/WSL:
cat ~/.ssh/id_ed25519.pub
# Windows (PowerShell):
Get-Content $env:USERPROFILE\.ssh\id_ed25519.pub
# Windows (CMD):
type %USERPROFILE%\.ssh\id_ed25519.pub
Adicionar a chave nos servicos:
- GitHub: Settings > SSH and GPG keys > New SSH key
- Forgejo: Settings > SSH / GPG Keys > Add Key
Opcao 2: Personal Access Token (PAT)
- GitHub: Settings > Developer settings > Personal access tokens > Tokens (classic)
- Gerar token com permissao
repo - Usar o token como senha quando o git pedir
Para salvar o token (nao precisar digitar toda vez):
git config --global credential.helper store
# Proximo push/pull vai pedir usuario e token, e salvar
Setup Rapido
1. Clonar o repositorio
Repositorio publico (HTTPS):
git clone https://github.com/esdrasrenan/sistema-de-chamados.git
cd sistema-de-chamados
Repositorio privado (SSH):
git clone git@github.com:esdrasrenan/sistema-de-chamados.git
cd sistema-de-chamados
Ou se ja tiver o repositorio:
cd sistema-de-chamados
git pull origin main
2. Configurar remotes (para CI/CD)
Repositorio publico (HTTPS):
git remote add forgejo https://git.esdrasrenan.com.br/esdras/sistema-de-chamados.git
Repositorio privado (SSH):
# Mudar origin para SSH (se clonou via HTTPS)
git remote set-url origin git@github.com:esdrasrenan/sistema-de-chamados.git
# Adicionar forgejo via SSH (porta 2222)
git remote add forgejo ssh://git@git.esdrasrenan.com.br:2222/esdras/sistema-de-chamados.git
Verificar remotes:
git remote -v
# Deve mostrar (exemplo com SSH):
# origin git@github.com:esdrasrenan/sistema-de-chamados.git (fetch)
# origin git@github.com:esdrasrenan/sistema-de-chamados.git (push)
# forgejo ssh://git@git.esdrasrenan.com.br:2222/esdras/sistema-de-chamados.git (fetch)
# forgejo ssh://git@git.esdrasrenan.com.br:2222/esdras/sistema-de-chamados.git (push)
3. Instalar dependencias
bun install
4. Configurar banco de dados
# Subir PostgreSQL via Docker
docker run -d \
--name postgres-dev \
-p 5432:5432 \
-e POSTGRES_PASSWORD=dev \
-e POSTGRES_DB=sistema_chamados \
postgres:18
# Criar arquivo .env
cp .env.example .env
Edite o .env e configure:
DATABASE_URL=postgresql://postgres:dev@localhost:5432/sistema_chamados
BETTER_AUTH_SECRET=sua-chave-secreta-aqui
NEXT_PUBLIC_APP_URL=http://localhost:3000
BETTER_AUTH_URL=http://localhost:3000
5. Inicializar o banco
# Gerar cliente Prisma
bun run prisma:generate
# Criar tabelas no banco
bunx prisma db push
# Popular dados iniciais
bun run auth:seed
6. Rodar o projeto
bun run dev:bun
Acesse: http://localhost:3000
Credenciais padrao: admin@sistema.dev / admin123
Comandos Uteis
| Comando | Descricao |
|---|---|
bun run dev:bun |
Iniciar servidor de desenvolvimento |
bun run build:bun |
Build de producao |
bun run lint |
Verificar codigo (ESLint) |
bun test |
Rodar testes |
bun run prisma:generate |
Gerar cliente Prisma |
bunx prisma studio |
Interface visual do banco |
Fluxo de Trabalho com Git
Push para ambos os remotes (recomendado)
# Fazer alteracoes
git add .
git commit -m "sua mensagem"
# Push para GitHub (backup) e Forgejo (CI/CD)
git push origin main && git push forgejo main
Configurar alias para push duplo (opcional)
# Criar alias
git config alias.push-all '!git push origin main && git push forgejo main'
# Usar
git push-all
Troubleshooting
Erro: "bun: command not found"
# Adicionar Bun ao PATH
export PATH="$HOME/.bun/bin:$PATH"
# Adicionar permanentemente ao ~/.bashrc ou ~/.zshrc
echo 'export PATH="$HOME/.bun/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
Erro: Prisma "P2021" / tabelas nao existem
bunx prisma db push
bun run auth:seed
Erro: Lockfile desatualizado
bun install
PostgreSQL nao conecta
# Verificar se o container esta rodando
docker ps
# Se nao estiver, iniciar
docker start postgres-dev
# Ou recriar
docker rm -f postgres-dev
docker run -d --name postgres-dev -p 5432:5432 -e POSTGRES_PASSWORD=dev -e POSTGRES_DB=sistema_chamados postgres:18
Convex (Backend de Tempo Real)
Para desenvolvimento com Convex local:
# Terminal 1: Convex dev server
bun run convex:dev:bun
# Terminal 2: Next.js
bun run dev:bun
Mais Informacoes
- Desenvolvimento detalhado:
docs/DEV.md - Deploy e operacoes:
docs/OPERATIONS.md - CI/CD Forgejo:
docs/FORGEJO-CI-CD.md