African Trans Network bot: grant/funding discovery, hate-crime & policy monitoring, plus a personal content-posting utility
# ATN Bot
One Telegram bot (`@AfricanTransNetworkbot`), two separate jobs sharing it:
- **Phase 1 + Phase 2 are African Trans Network's actual mission tooling.**
- **Phase 3 is an unrelated personal utility** (Theo's own Facebook/Instagram +
the ZAF Consultancy website gallery) that happens to live in the same bot
for convenience. Nothing in Phase 3 is ATN-branded or ATN-specific.
This repo is intentionally **fully separate** from Theo's existing
`visual-versatility-autopost` pipeline — own repo, own secrets, own Meta
app, own Telegram bot. Nothing here reuses that infrastructure.
## Phases
### Phase 1 — Grant / call-for-proposals discovery (`phase1_grants/`)
Finds funding opportunities relevant to African Trans Network: a curated,
maintained list of known LGBTQI+/human-rights funders active in Africa,
plus a broader web-search sweep for anything new. Triages eligibility and
drafts a summary — **never auto-submits an application**. A person always
does the actual submission.
### Phase 2 — Hate-crime & policy monitoring (`phase2_monitor/`)
Tracks anti-trans violence and policy/constitutional regressions across
Africa's regions, plus Africa-relevant activity from international
anti-gender-movement organizations (e.g. Family Watch International).
Surfaces candidates into a **human review queue** before anything counts
toward published statistics — verification before publication, always.
Public-facing stats stay at region/country aggregation; anything more
granular stays internal to ATN.
### Phase 3 — Personal content posting (`phase3_content/`)
Not ATN's. Send a photo/video to the bot, it generates a caption +
hashtags and posts to whichever destination you point it at:
- `destinations/personal_fb_ig.py` — Theo's personal Facebook/Instagram
- `destinations/zaf_gallery.py` — the ZAF Consultancy website's public
gallery page (via a scoped API route/secret, not direct DB access)
Built first, since it's the lowest-risk, fastest way to prove the fresh
Telegram + Me …