@map-our-system/scanner-server
v1.0.0
Published
Scanner HTTP server — reads project files by folder and sends JSONB snapshots to Map Our System API
Maintainers
Readme
@map-our-system/scanner
Pacote npm que expoe um servidor HTTP no projeto externo. Quando o botao "Scan" e clicado no frontend do Map Our System, o backend envia um webhook para este servidor, que le os arquivos por pasta e envia o snapshot JSONB de volta a API.
Instalacao
npm install @map-our-system/scannerConfiguracao
Crie um arquivo .map-our-system.json na raiz do seu projeto:
{
"apiKey": "sua-api-key-aqui",
"projectId": "uuid-do-projeto",
"apiUrl": "http://localhost:3001",
"port": 4000,
"scanPaths": ["."],
"ignorePaths": ["node_modules", ".git", "dist", ".next", "build"]
}| Campo | Obrigatorio | Padrao | Descricao |
|---------------|-------------|---------------------------------------------------|------------------------------------------------|
| apiKey | sim | - | Gerado automaticamente ao criar o projeto |
| projectId | sim | - | UUID do projeto no Map Our System |
| apiUrl | sim | - | URL base da API NestJS |
| port | nao | 4000 | Porta do servidor scanner |
| scanPaths | nao | ["."] | Pastas a escanear (relativas a raiz) |
| ignorePaths | nao | ["node_modules", ".git", "dist", ".next", ...] | Pastas/arquivos a ignorar |
Uso
# Iniciar o servidor scanner (porta do config ou padrao 4000)
npx map-our-system start
# Iniciar em porta especifica
npx map-our-system start --port 5000Fluxo
[Frontend: botao Scan]
|
v
[NestJS API: POST /user-projects/:id/scan]
|
v
[Webhook: POST http://seu-servidor:4000/scan]
|
v
[Scanner: le arquivos por pasta]
|
v
[POST /user-projects/:id/code-snapshot com X-API-Key]
|
v
[NestJS API: salva JSONB no PostgreSQL]
|
v
[Frontend: exibe arvore de arquivos]Estrutura do JSONB salvo
{
"src/components": {
"Button.tsx": "export function Button...",
"Header.tsx": "export function Header..."
},
"src/lib": {
"api.ts": "const API_BASE_URL..."
}
}Endpoints do servidor scanner
| Metodo | Path | Descricao |
|--------|-----------|--------------------------------------|
| POST | /scan | Dispara leitura e envio do snapshot |
| GET | /health | Verifica se o servidor esta rodando |
