diff --git a/README.md b/README.md index e4630f6..2cf209f 100644 --- a/README.md +++ b/README.md @@ -20,6 +20,10 @@ An asynchronous transactional data cleaning, validation, and LLM powered categor - Flags domestic transactions in USD currency. - Flags high value transactions and transactions with fraud indicative keywords. +[![High Level Overview](./docs/assets/Overview.svg)](https://drive.google.com/file/d/1yk0-pXClrOp0ccTiaO7tbXPHZg4EH1eE/view?usp=sharing) + +_Click on the image to view the [Draw.io](https://drive.google.com/file/d/1yk0-pXClrOp0ccTiaO7tbXPHZg4EH1eE/view?usp=sharing) file_ + ## Self Hosting & Deployment We publish production-ready images to **GitHub Container Registry (GHCR)**. You can pull them directly or run them via Docker Compose. diff --git a/docs/assets/Overview.svg b/docs/assets/Overview.svg new file mode 100644 index 0000000..47c2ead --- /dev/null +++ b/docs/assets/Overview.svg @@ -0,0 +1,4 @@ + + + +
Client
(curl)



(Backend Server)
Router
Job Service
Category Service
Internal Services
CSV Parser
Postgres Database
job, status=pending
broker+
cache
enqueue


(Celery Worker)
External Services


Google GenAI
open.er-api.com
ExchangeRateClient
Data Processing
LLMClient (Classification & JobSummaries)
Batching
Exponential Backoff
24H TTL Cache
Validation
Cleaning, Normalization
Deduplication
Anomaly Detection
dequeue
job, status=completed
/api/v1/jobs/upload
/api/v1/jobs/status
/api/v1/jobs/results
/api/v1/jobs/jobs
/api/v1/jobs/categories
GET Request
POST Request
GET & POST Request
\ No newline at end of file