Skip to content

Commit 182ed63

Browse files
author
Euan MacIntyre
committed
Polish README and docs
1 parent 060de09 commit 182ed63

1 file changed

Lines changed: 45 additions & 32 deletions

File tree

README.md

Lines changed: 45 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,50 +1,63 @@
1-
# econ_crime_monitoring_lab
1+
# Economic Crime Monitoring Lab
22

3-
Synthetic-only economic crime monitoring lab for local demo and interview use.
4-
The project simulates a fraud + AML monitoring stack end-to-end: synthetic transaction generation, controls, rules + ML scoring, alerting, case simulation, MI reporting, and investigator dashboarding.
3+
[![CI](https://github.com/<OWNER>/economic-crime-monitoring-lab/actions/workflows/ci.yml/badge.svg)](https://github.com/<OWNER>/economic-crime-monitoring-lab/actions/workflows/ci.yml)
54

6-
## Quick Start (macOS, ~2 minutes)
5+
Synthetic transaction monitoring pipeline with alerting, management information (MI), and a dashboard. All data in this repository is synthetic, and the project is for defensive analytics only.
6+
7+
## What it does
8+
9+
The pipeline generates synthetic customer, account, and transaction data; runs data quality checks; engineers monitoring features; applies rules and a baseline model; creates an alert queue and case records; produces weekly MI outputs; and serves a Streamlit dashboard for review.
10+
11+
## Quickstart (macOS)
712

813
```bash
914
make install
1015
make run
1116
make dashboard
1217
```
1318

14-
What happens:
15-
- `make run` creates outputs in local folders only:
16-
- `data/econ_crime_lab.db`
17-
- `reports/YYYY-MM-DD/mi_report.md`
18-
- `reports/YYYY-MM-DD/mi_report.html`
19-
- `make dashboard` starts Streamlit and loads data from SQLite.
19+
`make dashboard` starts the app at `http://localhost:8501`. Generated outputs are written locally and are not committed to the repository.
2020

21-
## Synthetic Data & Repo Hygiene
21+
## Outputs
2222

23-
- All data is synthetic. No real customer data is used.
24-
- Generated outputs are intentionally ignored by git (`.db`, CSV outputs, reports, caches).
25-
- To reset local outputs and caches:
23+
- Default SQLite database: `data/econ_crime_lab.db`
24+
- Reports directory: `reports/YYYY-MM-DD/`
25+
- Key tables:
26+
- `customers`
27+
- `accounts`
28+
- `transactions`
29+
- `alerts`
30+
- `cases`
31+
- `mi_weekly`
32+
- `model_metrics` (if present)
2633

27-
```bash
28-
make clean
29-
```
30-
31-
## What This Demonstrates (Economic Crime Data)
34+
## How this maps to Economic Crime (Data)
3235

33-
- Monitoring controls: schema validation, data quality checks, and run metadata.
34-
- Management information (MI): weekly alert volumes, outcomes, and handling metrics.
35-
- Alert explainability: rule hit context, model feature contributions, and investigator notes.
36+
- Controls and monitoring: rule-based controls, alert volume/rate monitoring, and false-positive review.
37+
- MI: weekly reporting outputs and trend tracking for alerts and case outcomes.
38+
- Governance: reproducible runs, logged assumptions and run metadata, and data quality checks.
39+
- Threat awareness: simulated typologies (for example structuring-style behavior and unusual movement patterns) support pattern spotting and triage practice.
3640

37-
## Common Commands
41+
## Repository layout
3842

39-
```bash
40-
make install
41-
make run
42-
make dashboard
43-
make test
44-
make lint
45-
make clean
43+
```text
44+
scripts/ # pipeline and utility entry points
45+
src/ # econ_crime_monitoring_lab package
46+
tests/ # automated tests
47+
data/ # local synthetic data outputs
48+
reports/ # dated MI outputs
4649
```
4750

48-
## Architecture
51+
## Notes and limitations
52+
53+
- Synthetic data only.
54+
- This is not a fraud playbook.
55+
- The baseline model is illustrative.
56+
- This is a learning project and not production monitoring.
57+
58+
## Screenshots
59+
60+
![Dashboard screenshot](docs/dashboard.png)
61+
![Alert detail screenshot](docs/alert_detail.png)
4962

50-
See `docs/architecture.md` for a mermaid system overview.
63+
Add screenshots by saving images into `docs/` with those names.

0 commit comments

Comments
 (0)