Skip to main content

coord-ingest

Global situational-awareness dashboards ingest hundreds of live feeds and turn them into an actionable picture — but they score the world's Tier-1 countries, and East Africa isn't on that list. The signals that matter here (drought onset, basin flooding, cholera clusters, rift-zone quakes) are in the same public feeds; nothing was turning them into events a regional coordination system could act on.

coord-ingest is that missing rail: an MIT-licensed adapter that converts open, key-free world-signal feeds into africa-coord-bus coordination events, filtered to East Africa, so the bus can cascade them to the right domains (insurance, crop advisory, water testing, cross-border alerts).

It ingests and normalizes; the bus routes. Clean separation, composable rails.

What it does

  • Adapters for public sources — Open-Meteo rainfall (drought/flood signals), USGS earthquakes, GDACS disaster alerts, HDX humanitarian datasets (OCHA, key-free CKAN), Kobo/ODK field reports (bottom-up ground truth) — each mapping raw records to typed CoordinationEvents. Add a feed by adding an adapter.
  • East-Africa filter — a signal becomes an event only if it lands in the regional bounding box or names a regional country. Global noise is dropped at ingest.
  • Offline-capable — ships with a SampleAdapter over bundled fixtures, so the full pipeline (and its tests) run with no network and no API keys.
  • Feeds the bus, doesn't replace it — routing, cascading, and cross-border logic stay in africa-coord-bus.

Use it

pip install coord-ingest
from coord_ingest import IngestPipeline, SampleAdapter

# Offline demo — no keys, no network
summary = IngestPipeline([SampleAdapter()]).run()
print(summary["collected"], "East Africa events")   # global noise already dropped
print(summary["by_domain"])                          # {'water': 3, 'health': 1, 'transport': 1}

# With live feeds + the bus:
# from coord_ingest import OpenMeteoAdapter, USGSQuakeAdapter, GDACSAdapter
# from africa_coord_bus import EventBus
# IngestPipeline([USGSQuakeAdapter(), GDACSAdapter()]).run(bus=EventBus(...))

Why not just fork a dashboard?

The global open-source dashboards that inspired this are AGPL applications. This is deliberately the opposite: a small MIT library that produces standard bus events any tool can consume — including a dashboard, if someone wants to build one. Rails, not another train.

IP & Collaboration

MIT. New feed adapters welcome via GitHub Issues (public, key-free sources, East-Africa relevant). Full policy: docs/architecture/IP_POLICY.md. Security: SECURITY.md.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

coord_ingest-0.3.0.tar.gz (15.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

coord_ingest-0.3.0-py3-none-any.whl (12.9 kB view details)

Uploaded Python 3

File details

Details for the file coord_ingest-0.3.0.tar.gz.

File metadata

  • Download URL: coord_ingest-0.3.0.tar.gz
  • Upload date:
  • Size: 15.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for coord_ingest-0.3.0.tar.gz
Algorithm Hash digest
SHA256 e48ab5c71ca5b7255a67426d0ed9733758b139429840fd7d5ea5ab38fb77da4b
MD5 c51ec1c646dad09f7db4d1bd22ce1a92
BLAKE2b-256 64889f089f919f89c23391377649d8118d06d15a3bab1a87f6b32b2b069fcc1a

See more details on using hashes here.

File details

Details for the file coord_ingest-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: coord_ingest-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 12.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for coord_ingest-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3fcede6ca200f3be7db02a29d348d1917396604f79951fcbb983b7b55fc837ec
MD5 0842d0a0f306ae211387164bc3359e4c
BLAKE2b-256 fe547fa5e1053772822a62864bbf12859b8196856d98c878ceaeb755c4181a1a

See more details on using hashes here.

Release history Release notifications | RSS feed

0.4.0

2 files

This release

0.3.0 This release

2 files

0.2.0

2 files

0.1.1

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page