A research tool that lets you explore, compare, and track African countries — their economic indicators, geographic data, demographics, and regional groupings.
# AfriPulse 🌍
A research and comparison intelligence dashboard covering all 59 African countries.
Built as a production-grade Vue 3 application mirroring the architecture of real-world
African economic data platforms.
🔗 **Live Demo:**
afripulse-eight.vercel.app
---
## Overview
AfriPulse gives researchers, analysts, and curious minds a fast, clean interface to
explore African countries by geography, population, languages, currencies, regional
blocs, and economic indicators. It is not a tutorial project — it is a shippable
portfolio product built with the same tools and patterns used in production Vue 3 teams.
---
## Features
### ✅ Live (Week 1)
- Country listing for all 54 African nations sourced from the REST Countries API
- Live search with reactive filtering by country name
- Subregion sidebar navigation with active state highlighting
- Pinia store managing global state — selected region, search query, filtered results
- Country detail page with full metadata — flag, capital, population, languages, currencies
- Vue Router 4 navigation with dynamic route segments
- Full TypeScript interfaces across components, stores, and API responses
- Tailwind CSS throughout — dark mode, responsive grid, utility-first styling
### 🚧 In Progress (Week 2)
- Multi-country comparison tool
- 10-year GDP time-series charts via World Bank Indicators API (Chart.js)
- Pinia-persisted favourites and watchlist
- Suspense + async components for deferred data loading
- Responsive grid and dark mode refinements
### 📅 Planned (Weeks 3–4)
- Cmd+K command palette (Teleport + provide/inject)
- Reactive SVG choropleth map of Africa
- Virtualised list with v-memo and IntersectionObserver
- Vitest unit tests for composables and stores
- EN/FR internationalisation with vue-i18n
- PWA support via vite-plugin-pwa
---
## Tech Stack
| Layer | Technology |
| ---------------- | ----------------------- |
| Framework | Vue 3 (Composition API) |
| Language …