Documentação técnica aberta e colaborativa sobre Segurança Ofensiva, Hacking Ético e Pentest, construída com Next.js e Fumadocs (MDX) no formato Docs as Code.
O projeto adota uma arquitetura em repositório único (Next.js + /content):
- Documentação em MDX: Todo o conteúdo fica centralizado na pasta
content/docs/. - Contribuições Abertas: Qualquer usuário pode sugerir melhorias, corrigir artigos ou submeter novos tutoriais abrindo um Pull Request (PR).
- Botão "Edit on GitHub": Em qualquer página da documentação, os leitores podem clicar em "Edit on GitHub" para abrir diretamente a tela de fork/edição do GitHub.
- Validação Automática (CI): O GitHub Actions compila o site e valida tipos/sintaxe MDX em cada Pull Request.
- Deploy Automático no Merge: Ao aprovar e mesclar um PR na branch
main, a esteira de CI/CD (Vercel, Cloudflare Pages, Docker/Homelab, etc.) gera a nova versão estática do site em produção.
- Node.js: v18+ (recomendado Node 20+)
- NPM (ou pnpm/yarn/bun)
# 1. Instalar dependências
npm install
# 2. Iniciar servidor local de desenvolvimento (Fast Refresh ativado)
npm run dev
# 3. Testar a compilação de produção e checagem de tipos
npm run types:check
npm run buildAcesse http://localhost:3000 no navegador.
guia.hacking.net.br/
├── .github/
│ ├── workflows/ci.yml # Validação automática em Pull Requests e na branch main
│ └── pull_request_template.md # Template exibido ao abrir novos PRs
├── app/
│ ├── (home)/ # Landing page principal (/)
│ ├── docs/ # Rotas dinâmicas do Fumadocs (/docs/[[...slug]])
│ ├── api/search/ # API Route para mecanismo de busca integrado
│ └── layout.tsx # Layout global com suporte a tema e pt-BR
├── content/
│ └── docs/ # ARQUIVOS MDX DA DOCUMENTAÇÃO
│ ├── index.mdx # Introdução ao guia
│ ├── contribuindo.mdx # Guia detalhado de contribuição via PR
│ └── componentes-mdx.mdx# Exemplos de sintaxe MDX e componentes
├── lib/
│ ├── shared.ts # Configuração geral (nome, rotas, GitHub owner/repo)
│ └── source.ts # Loader e configuração do Fumadocs Source
├── package.json
└── next.config.mjs
Basta criar um arquivo .mdx dentro de content/docs/ com o frontmatter obrigatório:
---
title: Nome da Ferramenta ou Técnica
description: Resumo conciso sobre o objetivo do guia.
---
## Seção 1
Seu texto em Markdown aqui...
```bash title="Terminal"
nmap -sV -sC target.local
Subpastas viram categorias automaticamente na navegação lateral (ex: `content/docs/web/sql-injection.mdx`).
---
## ⚙️ Variáveis de Ambiente (Opcional)
Copie o arquivo `.env.example` para `.env.local` caso queira apontar para o seu repositório oficial no GitHub:
```bash
NEXT_PUBLIC_GITHUB_OWNER=hackingnetbr
NEXT_PUBLIC_GITHUB_REPO=guia.hacking.net.br
NEXT_PUBLIC_GITHUB_BRANCH=main
NEXT_PUBLIC_SITE_URL=https://guia.hacking.net.br