Guidelines
Guia completo para contribuir com Vectora: setup, código, commits, PRs e melhores práticas.
Setup
git clone https://github.com/kaffyn/vectora
cd vectora
go mod tidy
go build -o vectora ./cmd/vectoraCode Style
- Golang: Go 1.22+, seguir Go Code Review Comments
- Formatting:
gofmtougoimports - Linting:
golangci-lint(rodargolangci-lint run) - Tests:
go test, cobertura >80%
Git Workflow
- Fork repo
- Create branch:
git checkout -b feature/your-feature - Commit: conventional commits (
feat:,fix:,docs:) - Push:
git push origin feature/your-feature - PR com descrição clara
PR Requirements
- Testes passando (
go test ./...) - Linting limpo (
golangci-lint run) - Sem
fmt.Printf(usar logger interno) - Documentação atualizada (PT + EN)
- Descrição do PR explica o PORQUÊ
Commit Message Format
type(scope): brief description
Longer explanation if needed.
Closes #123Types: feat, fix, docs, test, refactor, perf, chore
Documentation
- Update CHANGELOG.md
- Add JSDoc para funções públicas
- Portuguese + English (i18n)
Testing
go test ./... # Rodar todos os testes
go test -v ./pkg/core # Testar pacote específico
go test -coverprofile=coverage.out ./... # Relatório de coberturaPerformance
- Benchmark antes/depois:
go test -bench=. ./... - Vector search deve ser <500ms
- Não adicione dependências pesadas
Security
- Use BYOK para APIs
- Sem segredos hardcoded
- Rodar
go nancyougovulncheckantes do PR
Questions?
- GitHub Discussions: github.com/kaffyn/vectora/discussions
- Issues: github.com/kaffyn/vectora/issues
External Linking
| Concept | Resource | Link |
|---|---|---|
| MCP | Model Context Protocol Specification | modelcontextprotocol.io/specification |
| MCP Go SDK | Go SDK for MCP (mark3labs) | github.com/mark3labs/mcp-go |
Parte do ecossistema Vectora · Open Source (MIT) · Contribuidores