Ocularis is a Go-based tool for processing and generating reports from structured data, with a particular focus on subdomain enumeration outputs from Subfinder.
- Encrypted single file HTML Report Generation: Produces structured HTML reports using Go templates decrypted with a secret key.
- Tool Specific Ingestion: Supports ingestion of Subfinder's JSON output with plans to support additional tools in the future.
- Multiple Export options: Supports multiple export options (CSV, JSON, txt, etc.).
ocularis
├── cmd
│ └── ocularis
│ └── main.go
├── go.mod
├── internal
│ ├── core
│ │ ├── generator.go
│ │ └── optimizer.go
│ ├── inputs
│ │ └── subfinder.go
│ └── outputs
│ └── html.go
├── ocularis
├── pkg
│ └── utils
│ └── fileutils.go
├── README.md
└── templates
└── report.gohtml
cmd/ocularis/main.go
: Primary execution point of the application.internal/core/generator.go
: Governs structured report generation processes.internal/core/optimizer.go
: Implements sanitization before templating.internal/inputs/subfinder.go
: Facilitates structured ingestion of Subfinder output.internal/outputs/html.go
: Handles structured HTML report generation and output.pkg/utils/fileutils.go
: file-handling utilities.
- Go 1.21+
- Git
git clone https://github.com/sbl8/ocularis.git
cd ocularis
go mod download
go build -o ocularis ./cmd/ocularis
./ocularis -input path/to/subdomains.json -output path/to/report.html -template templates/report.gohtml
-input
: Specifies the path to the structured input data (JSON).-output
: Defines the destination for the generated report.-template
: Points to the structured template file used for report generation.
- Fork the repository.
- Establish a feature branch (
git checkout -b feature/YourFeatureName
). - Implement modifications (
git commit -m 'feature'
). - Push updates (
git push origin feature/YourFeatureName
). - Submit a pull request for review.
This project is licensed under the MIT License. Refer to the LICENSE file for specifics.