How anuragpathak07/nice_hackarena works
This is a FastAPI AML/KYC compliance backend: it accepts applicant and watchlist data, checks identity consistency, screens applicants for watchlist matches, assesses risk, and supports impact analysis and officer case resolution. Alerts and audit records preserve review activity. The sampled API and services show these principal flows; the README is empty, and only partial excerpts are available, so some routing and dashboard details are represented only where supported by the tree and router registration.
Main entry points: __init__.py Repositories · screening_service.py Applicant screening · main.py FastAPI application · compliance.py Compliance API
Components 20
API and review
- FastAPI application
backend/app/main.py - Compliance API
backend/app/api/v1/compliance.py - Applicant routes
backend/app/api/v1/applicants.py - Watchlist routes
backend/app/api/v1/watchlist.py - Case workflow
backend/app/services/case_service.py
Screening and risk
- ID consistency
backend/app/services/consistency_service.py - Applicant screening
backend/app/services/screening_service.py - Name matching
backend/app/services/matching_service.py - Risk assessment
backend/app/services/risk_service.py - Case summaries
backend/app/services/llm_service.py - Rescreening
backend/app/services/rescreening_service.py
Impact monitoring
- Impact analysis
backend/app/services/impact_service.py - Impact routes
backend/app/api/v1/compliance.py
Persistence
- Repositories
backend/app/repositories/__init__.py - Compliance records
backend/app/models/__init__.py - SQL database
backend/app/core/database.py - Runtime settings
backend/app/core/config.py
Other components
- Compliance officer
- API client
- Groq LLM
Connections 25
- API client → FastAPI application: sends requests
- Compliance officer → API client: uses API
- FastAPI application → Compliance API: registers routers
- Compliance API → Applicant routes: routes applicant requests
- Compliance API → Watchlist routes: routes watchlist requests
- Applicant routes → ID consistency: checks identity
- Applicant routes → Applicant screening: starts screening
- Applicant screening → Name matching: calculates matches
- Applicant screening → Risk assessment: assesses match risk
- Applicant screening → Repositories: reads and writes
- ID consistency → Repositories: loads ID records
- Compliance API → Case workflow: manages cases
- Case workflow → Repositories: reads and writes
- Case workflow → Case summaries: builds case summary
- Case summaries → Groq LLM: requests summary
- Watchlist routes → Repositories: reads and writes
- Impact routes → Impact analysis: starts analysis
- Impact analysis → Name matching: calculates matches
- Impact analysis → Risk assessment: recalculates risk
- Impact analysis → Repositories: records results
- Rescreening → Applicant screening: uses screening
- Repositories → Compliance records: queries and persists
- Compliance records → SQL database: maps records
- FastAPI application → SQL database: creates tables
- FastAPI application → Runtime settings: loads settings