A professional, full-stack OSINT (Open Source Intelligence) orchestration platform. It enables security researchers to perform domain intelligence gathering using industry-standard tools like theHarvester and Amass through a highly polished, responsive web interface.
The system leverages a modern asynchronous architecture to handle long-running OSINT scans without blocking the user interface.
graph TD
User((User)) -->|React Frontend| WebApp[Web Dashboard]
WebApp -->|REST API| Backend[Spring Boot Backend]
Backend -->|Async Task| Orchestrator[OSINT Orchestrator]
Orchestrator -->|Docker-in-Docker| Tools[theHarvester / Amass Container]
Tools -->|JSON Output| Orchestrator
Orchestrator -->|Persist| DB[(SQLite Database)]
Backend -->|Poll/Subscribe| DB
DB -->|Real-time UI| WebApp
- Backend (Kotlin/Spring Boot): Chosen for its robust type safety and excellent asynchronous support (Coroutines/Async).
- Frontend (React/TypeScript): Leverages a component-based architecture for rich interactivity (Framer Motion) and strict typing for maintainability.
- Persistence (SQLite): Provides local-first, portable, and reliable storage for scan history without the overhead of a full RDBMS.
- Containerization (Docker): Scans are executed in transient, isolated containers to ensure environment consistency and host-level security (sandboxing).
- Rich Aesthetics: A "Dark Mode" first interface featuring glassmorphism, smooth animations, and a responsive CSS grid.
- Real-time Intelligence: Automatic status polling and live result parsing for immediate feedback.
- Persistent Reordering: Implements a persistent drag-and-drop system for scan history management.
- Shareable Insights: Unique URL persistence for every scan, enabling direct access to historical findings.
This project prioritizes robustness with a comprehensive CI/CD-ready testing suite.
| Module | Coverage | Technologies |
|---|---|---|
| Core Logic (Hooks/Services) | 100% | Jest, RTL, MSW |
| API Layer | 100% | JUnit 5, MockK, MockMvc |
| UI Components | ~90% | React Testing Library |
| Overall Project | >92% | Jacoco, Jest-Coverage |
| Project Demo | Frontend Coverage | Backend Test Suites |
|---|---|---|
![]() |
![]() |
![]() |
| Method | Endpoint | Description |
|---|---|---|
POST |
/api/scans |
Initiate a new OSINT scan. |
GET |
/api/scans |
Retrieve all historical scans. |
GET |
/api/scans/{id} |
Fetch detailed results for a specific scan. |
DELETE |
/api/scans |
Clear all scan history. |
Quickly orchestrate and start all services using Docker:
# Clone the repository
git clone https://github.com/albonidrizi/OSINT.git
cd OSINT
# Start production-ready services
docker-compose up --build -dAccess the dashboard at http://localhost. For deeper customization, refer to the QUICKSTART.md.
All tools are executed in sandboxed containers. No external dependencies are executed directly on the host machine, mitigating risk from third-party scan scripts.
This project is built for professional evaluation and portfolio purposes.


