A comprehensive educational website that explores how taxation is spent across different countries. This interactive platform helps users understand government spending, tax rates, and how public money is allocated.
π View Live Site | π Demo Data | π Historical Trends
- Compare Countries: See how different nations tax and spend
- Explore Historical Data: Track changes over time
- Interactive Charts: Hover and click to explore data
- Educational Content: Learn about taxation and government spending
- Mobile Friendly: Works perfectly on all devices
- Visit the live site above
- Select countries to compare
- Choose chart types (Bar, Line, Pie)
- Explore historical trends over time
- Read educational content in the About section
- Country Comparison: Compare tax rates and government spending between countries
- Historical Data: Track how taxation and spending have changed over time
- Interactive Visualizations: Charts and graphs to make data easy to understand
- Educational Tooltips: Hover over categories to learn what different terms mean
- Mobile Friendly: Works perfectly on desktop and mobile devices
- School-Friendly: Designed to be accessible for students and educators
This website uses accurate, up-to-date data from:
- OECD (Organisation for Economic Co-operation and Development)
- World Bank
- IMF (International Monetary Fund)
- National statistical offices
- Node.js (v18 or higher)
- npm or yarn
- Clone the repository:
git clone https://github.com/yourusername/where-does-our-money-go.git
cd where-does-our-money-go
- Install dependencies:
npm install
This application requires API keys for accessing official government data sources. Create a .env
file in the root directory:
# API Keys for Data Sources
# Get these from the respective organizations:
# - OECD: https://stats.oecd.org/api/
# - World Bank: https://data.worldbank.org/developers
# - IMF: https://www.imf.org/en/data
VITE_OECD_API_KEY=your_oecd_api_key_here
VITE_WORLD_BANK_API_KEY=your_world_bank_api_key_here
VITE_IMF_API_KEY=your_imf_api_key_here
- Start the development server:
npm run dev
- Open your browser and visit
http://localhost:3000
npm run dev
- Start development servernpm run build
- Build for productionnpm run test
- Run testsnpm run lint
- Run lintingnpm run preview
- Preview production build
where-does-our-money-go/
βββ src/
β βββ components/ # React components
β βββ data/ # Data files and API calls
β βββ hooks/ # Custom React hooks
β βββ pages/ # Page components
β βββ styles/ # CSS and styling
β βββ utils/ # Utility functions
βββ public/ # Static assets
βββ tests/ # Test files
βββ docs/ # Documentation
The project includes comprehensive testing:
- Unit tests for components and utilities
- Integration tests for data flows
- Visual regression tests for UI consistency
Run tests with:
npm run test
This project is automatically deployed to GitHub Pages when tests pass. The deployment process:
- Runs all tests
- Builds the production version
- Deploys to GitHub Pages if all tests pass
- OECD API: Visit https://stats.oecd.org/api/ and register for API access
- World Bank API: Visit https://data.worldbank.org/developers and get an API key
- IMF API: Visit https://www.imf.org/en/data and register for API access
Create a .env
file with your API keys (see Environment Setup above).
- Go to your GitHub repository
- Click Settings β Secrets and variables β Actions
- Click New repository secret
- Add these secrets:
OECD_API_KEY=your_oecd_api_key_here WORLD_BANK_API_KEY=your_world_bank_api_key_here IMF_API_KEY=your_imf_api_key_here
The GitHub Actions workflow will automatically use the secrets during deployment.
We welcome contributions! Please see our Contributing Guide for details.
This project is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
- All Content: CC BY-NC-SA 4.0 - Allows sharing and adaptation with attribution
- Educational Use: Encouraged and supported
- Non-Commercial Use: Allowed with proper attribution
- Commercial Use: Not permitted
See the LICENSE file for full details.
- Data provided by OECD, World Bank, and IMF
- Built with React, TypeScript, and modern web technologies
- Icons from Feather Icons
- Charts powered by Chart.js
If you have questions or need help, please open an issue on GitHub or contact us at info@dynamicdevices.co.uk.