Inspiration
Fraud detection is broken. Traditional rule-based systems are slow, rigid, and miss sophisticated schemes. We watched fraud rings operate in plain sight—coordinated accounts moving money in circles, structuring transactions, layering through multiple counterparties. The tools existed, but nobody had stitched them together into something actually usable. We built FraudSentinel to see what was invisible.
What it does
FraudSentinel is a real-time fraud detection system that catches coordinated fraud rings and account anomalies using machine learning + network analysis.
How we built it
Data ingestion — parse CSV files (from/to/amount columns) Feature extraction — compute 7 behavioral indicators per account (log-normalized for scale invariance) Isolation Forest algorithm — built from scratch in JS. Randomly partition data recursively; shorter path length = more anomalous Graph construction — build transaction network from raw data Connected components — BFS to find fraud rings (clusters of flagged accounts with internal transactions) D3 force simulation — render interactive network with zoom/pan, node sizing by velocity, edge thickness by transaction count UI/UX — modern, clean design with real-time progress feedback
Challenges we ran into
Isolation Forest implementation — had to port the algorithm from scikit-learn, handle path length calculations, calibrate anomaly thresholds without labeled data Performance at scale — D3 rendering slows down with 100+ nodes; optimized by aggregating repeated links and using force-directed layout carefully Feature engineering without domain knowledge — what signals actually matter? Tested transaction velocity, amounts, timing, counterparty diversity. Night activity was a strong fraud indicator Threshold tuning — balancing false positives vs false negatives. Settled on 0.62 after testing
Accomplishments that we're proud of
Built a production-grade fraud detection system from scratch in 36 hours
Fraud ring detection that actually works — catches coordinated schemes, not just individual outliers
What we learned
Machine learning doesn't require Python or a GPU. JavaScript can handle real algorithms Graph analysis is more powerful than individual node scoring when detecting organized fraud Behavioral features (timing, velocity, amount distribution) are incredibly informative UI/UX matters. A good dashboard makes the difference between "this is cool" and "this is actually useful" Anomaly detection > classification when you don't have labeled fraud data
What's next for FraudSentinel
Real data connectors integrate with actual transaction databases (Plaid, banking APIs)
Log in or sign up for Devpost to join the conversation.