Transaction Anomaly Detector is a lightweight and beginner-friendly browser-based tool that detects suspicious patterns in financial transactions using core Data Structures & Algorithms (DSA) — with no machine learning involved.
This tool is transparent, explainable, and ideal for those learning DSA or contributing to open-source.
- ✅ DSA-Powered Detection: Uses algorithms like sliding window, graphs, hash maps, and tries.
- 📈 Real-Time Results: Instant analysis of uploaded transaction data.
- ⚡ No Backend Required: Fully functional in the browser — no server or database needed.
- 🔍 Explainable Logic: Transparent detection with no black-box ML models.
- Frontend: HTML, CSS, JavaScript (Vanilla)
- Algorithms Implemented:
- Sliding Window
- Graph Cycle Detection
- Trie for Merchant Flagging
- Hash Map Analysis
Transactions are analyzed in real-time using the following DSA techniques:
| 🧮 Algorithm | 🔍 Detection Capability |
|---|---|
| Sliding Window | Rapid, high-frequency usage in a short time |
| Graph Cycle Detection | Circular or suspicious fund transfers |
| Trie Search | Suspicious merchant name patterns |
| Hash Maps | User behavior outliers and frequency spikes |
Here's a quick preview of how the tool looks in action:
- Left Panel: Input area for CSV transactions, threshold settings.
- Right Panel: Real-time detection results and summaries.
We welcome contributions from everyone! Whether you're a beginner or an experienced developer, you can help improve the tool or suggest new features. This project is a great way to learn and apply fundamental DSA concepts in a practical setting.
This is a perfect project for GSSoC’25, Hacktoberfest, and other open-source programs.
To get started, follow these steps to set up your local development environment and make your first contribution.
-
Fork this repository: Click the "Fork" button in the top-right corner of the repository page. This creates a copy of the project on your GitHub account.
-
Clone your fork to your local machine:
git clone https://github.com/VaishnaviMelagiri/Transaction-Anomaly-Detector.git
-
Navigate into the project directory:
cd Transaction-Anomaly-Detector -
Create a new branch for your changes:
git checkout -b your-feature-branch
This ensures your changes are isolated from the main branch. Use a descriptive name like
add-sliding-window-optimizationorfix-ui-alignment. -
Make your changes and commit them:
git add . git commit -m "Added: [Your concise and clear description of the changes]"
Write a clear commit message explaining what you did.
-
Push your new branch to your forked repository:
git push origin your-feature-branch
-
Create a Pull Request: Go to your fork on GitHub and click the "Compare & pull request" button. Provide a meaningful title and detailed description of your changes, referencing any relevant issues.
If you're new to the project or open-source, here are some great places to begin:
- Look for
good first issuelabels: These are tasks specifically curated for new contributors. - Documentation Improvements: Add comments to the code for better clarity.
- UI/UX Enhancements: Suggest and implement improvements to the user interface or experience.
- DSA Optimization Tasks: If you're a DSA enthusiast, try to optimize one of the existing algorithms or suggest a new detection method.
📌 Check the Issues tab to find a task that interests you!
This project is licensed under the MIT License.
- Inspired by real-world financial fraud detection challenges and the need for transparent, explainable security tools.
- Created with 💙 for learning .