PacketScope started as a mini project while learning java. Around the same time, I was learning how network packets worked and had just started using Postman to test APIs and mock HTTP requests.
What began as a small Java exercise gradually grew into something completely different. The more I learned about networking, the more the project shifted away from being a course assignment and became a way for me to explore, inspect, and understand how network traffic actually behaves.
It eventually evolved into a packet analysis platform with traffic capture, inspection, replay, and analytics features.
Implementation highlights
Live packet capture engine
Captures IPv4 and IPv6 TCP/UDP packets in real time using Pcap4J and extracts protocol metadata for analysis.
Asynchronous processing pipeline
Built a producer–consumer queue so packet capture, processing, and database writes happen independently without blocking incoming traffic.
Batch persistence layer
Stores captured packets in transactional batches through JDBC, reducing database overhead during heavy traffic.
Traffic analytics dashboard
Exposes captured traffic through a lightweight REST API and visualizes protocol distribution and network activity using Chart.js.
HTTP replay & inspection
Reconstructs captured HTTP requests so they can be inspected and replayed directly from the dashboard for debugging and learning.