Real-time strategic intelligence platform tracking sovereignty, resource wealth, and outside influence across all 54 African nations.
African X-ray Intelligence System β a strategic intelligence dashboard that provides a comprehensive, data-driven view of Africa's sovereignty landscape. AXIS treats Africa as Layer Zero of the global technology supply chain and provides the tools to understand, visualize, and act on that reality.
AXIS tracks:
- ποΈ Sovereignty scores for all 54 nations (0β100 composite metric)
- βοΈ Resource wealth metrics with key natural resources per country
- π‘ Live OSINT intelligence scraped from Al Jazeera, Mining Weekly, African Business & Medium
- πΊοΈ Interactive heat map with country-level filtering and historical timeline
- π Country dossiers with strategy, exports, and friction analysis
- π Outside influence tracking β monitoring foreign power impact on African affairs
- π§ AI Resource Nexus β force-directed knowledge graph mapping Africa's role in the AI supply chain
- π Strategic analytics β scatter plots, trendlines, influence flows, and more
Countries are color-coded by their Axis Score β green for high sovereignty, red for extractive economies. Click any country to filter the entire dashboard. Includes a historical timeline slider that animates score changes across years.
Powered by Firecrawl, the platform scrapes multiple news sources in real-time, classifying articles as SOVEREIGNTY RISK or OUTSIDE INFLUENCE with severity ratings. Data is persisted to Supabase via automated GitHub Actions cron jobs.
Every nation has a resource wealth score based on verified mineral and energy endowment data, with key resources tagged (Cobalt, Gold, Oil, Platinum, Lithium, etc.).
Click any country for a detailed intelligence modal with three tabs:
- Strategy β Score breakdown, key initiatives, and sovereignty trajectory
- Exports β Commodity pipeline with destinations and values
- Friction β Active threat vectors, severity levels, and source citations
A comprehensive analytics suite with four specialized dashboards:
| Tab | Name | Description |
|---|---|---|
| π | The Extractivist Trap | Scatter plot of Resource Wealth vs. Sovereignty Score β exposing nations with high potential but low value capture |
| π | Sovereignty Trends | 10-year trajectory area charts per country, visualizing whether nations are gaining or losing economic independence |
| π | Influence Flows | Nivo Sankey diagram mapping negative influence vectors from China, US, Russia, France, IMF/World Bank into vulnerable African states |
| π§ | AI Nexus | Interactive force-directed knowledge graph (see below) |
An interactive, physics-powered knowledge graph visualizing Africa's critical role in the AI supply chain:
African Nations β Critical Minerals β Refined Components β AI End Products
(DRC, Zambia...) (Cobalt, Lithium...) (Batteries, Chips...) (GPUs, LLMs, Data Centers)
Features:
- Force-directed layout with
react-force-graph-2dand tunedd3-forcephysics - Dynamic particle animations along supply chain links
- Hover-to-isolate: highlighting connected edges and fading unrelated nodes
- Floating detail cards with node descriptions and flow metrics
- Full-screen expansion support
- Custom canvas-rendered nodes with glow effects and outlined text labels
Scrolling marquee of pan-African continental development goals (Agenda 2063, AfCFTA milestones), providing persistent context.
Pin countries to your personal watchlist (persisted in LocalStorage) β pinned countries are prioritized in the intelligence feed and highlighted on the map.
Fully themed UI with smooth transitions, premium aesthetics in both modes, and proper contrast for all map and chart elements.
| Layer | Technology |
|---|---|
| Framework | Next.js 16 (App Router, Turbopack) |
| Language | TypeScript 5 |
| Database | Supabase (PostgreSQL + RLS) |
| Automation | GitHub Actions (Cron Jobs) |
| OSINT Engine | Firecrawl API |
| Mapping | React Simple Maps + D3-Geo |
| Charts | Recharts + Nivo Sankey |
| Graph Viz | react-force-graph-2d + d3-force |
| Animation | Framer Motion |
| Styling | Tailwind CSS 4 |
| State | Browser LocalStorage |
| Hosting | Vercel |
graph TD
%% Define Nodes
subgraph Frontend [Next.js Web Application / Vercel]
UI[Axis Interactive Dashboard]
Map[Sovereignty Map + Timeline]
Feed[Friction Engine Feed]
Analytics[Strategic Analytics Suite]
Nexus[AI Resource Nexus Graph]
Local[Browser LocalStorage]
end
subgraph Backend [Serverless & Cloud]
DB[(Supabase PostgreSQL)]
Cron[GitHub Actions Automation]
OSINT[Firecrawl Web Scraper]
end
%% Define Connections
Cron -- 1. Triggered Twice Daily --> OSINT
OSINT -- 2. Scrapes News Sources --> OSINT
OSINT -- 3. Parses via AI Schema --> Cron
Cron -- 4. Inserts Validated Alerts --> DB
DB -- 5. Streams Live Intelligence & Scores --> Feed
DB -- 6. Streams ISO Country Metrics --> Map
DB -- 7. Powers Analytics Charts --> Analytics
Local -- 8. Hydrates User Watchlist --> UI
UI -- 9. Filters & Sorts Feed --> Feed
Analytics -- 10. Renders Scatter, Trends, Flows --> UI
Nexus -- 11. Maps Supply Chain Dependencies --> UI
%% Styling
classDef frontend fill:#1e293b,stroke:#3b82f6,stroke-width:2px,color:#fff
classDef backend fill:#0f172a,stroke:#10b981,stroke-width:2px,color:#fff
classDef storage fill:#334155,stroke:#f59e0b,stroke-width:2px,color:#fff
class UI,Map,Feed,Analytics,Nexus frontend
class DB,Cron,OSINT backend
class Local storage
# Clone the repository
git clone https://github.com/Oddjobe/Axis.git
cd Axis
# Install dependencies
npm install --legacy-peer-deps
# Set up environment variables
cp .env.example .env.local
# Add your FIRECRAWL_API_KEY and Supabase keys
# Run development server
npm run devOpen http://localhost:3000 to view the dashboard.
| Variable | Description |
|---|---|
NEXT_PUBLIC_SUPABASE_URL |
Your Supabase project URL |
NEXT_PUBLIC_SUPABASE_ANON_KEY |
Your public Supabase API key |
FIRECRAWL_API_KEY |
API key from firecrawl.dev |
SUPABASE_SERVICE_ROLE_KEY |
Master database bypass key (GitHub Actions only) |
| Status | Score | Meaning |
|---|---|---|
| π’ OPTIMAL | 75+ | Strong sovereignty trajectory |
| π΅ STABLE | 60β74 | Consistent metrics, no major risks |
| π‘ IMPROVING | 51β59 | Positive reform trend underway |
| π΄ EXTRACTIVE | β€50 | Resources leaving without value capture |
src/
βββ app/
β βββ page.tsx # Main dashboard
β βββ layout.tsx # Root layout + SEO
β βββ api/
β β βββ intelligence/route.ts # OSINT scraping endpoint
β β βββ blogs/route.ts # Blog aggregation endpoint
β βββ robots.ts # SEO robots.txt
β βββ sitemap.ts # SEO sitemap
βββ components/
β βββ africa-map.tsx # Interactive SVG heat map
β βββ friction-engine.tsx # Live intelligence feed
β βββ analytics-modal.tsx # Strategic analytics (4 tabs)
β βββ ai-resource-graph.tsx # AI Nexus force graph
β βββ wealth-vs-sovereignty-chart.tsx # Extractivist Trap scatter
β βββ sovereignty-trendline-chart.tsx # 10-year trajectory
β βββ influence-sankey-chart.tsx # Influence flows Sankey
β βββ country-dossier-modal.tsx # Country detail modal
β βββ continental-goals-ticker.tsx # AU goals marquee
β βββ afcfta-matrix.tsx # AfCFTA trade matrix
β βββ mission-modal.tsx # Platform mission overlay
βββ lib/
β βββ supabase.ts # Database client
β βββ use-watchlist.ts # Watchlist hook
β βββ i18n.ts # Internationalization
βββ scripts/
βββ seed.ts # Database seeder
βββ scrape.ts # Cron scraping script
Contributions are welcome! This platform is built for the African community. If you'd like to:
- Add new data sources or intelligence feeds
- Improve visualizations or add new analytics
- Add support for African languages
- Expand the AI Nexus graph with more supply chain data
- Fix bugs or improve performance
Please open a pull request.
MIT License β see LICENSE for details.
- Supabase β Open source Firebase alternative
- Firecrawl β OSINT scraping engine
- react-simple-maps β SVG map rendering
- Recharts β Composable chart components
- Nivo β Data visualization library
- react-force-graph β Force-directed graph engine
- Framer Motion β Animation library
- Vercel β Hosting and deployment
- The African developer community π€πΏ
Built with purpose. Built for Africa.
Africa is Layer Zero.