A webportal for scientists and researchers that want to know more about the air quality in Ghana
# air quality in Ghana
A web-based platform that visualizes nitrogen dioxide (NO₂) air quality measurements in Kumasi, Ghana.
The portal is designed to support public awareness and scientific research, with a strong focus on mobile-first design, low data usage, and data transparency.
🔗 Live site:
air-quality-in-ghana-produc…
## Project overview
This platform presents monthly NO₂ measurements collected using low-cost diffusion tubes at street level.
Users can explore the data through an interactive map and table view, download datasets, and compare locations over time.
In addition, a protected admin environment allows researchers to manage locations and measurements without modifying the codebase.
## Key features
### User
• Interactive map with measurement points (Leaflet)
• Time slider to explore historical data (monthly)
• Table view with filtering (period, value range, search)
• Download options (JSON / Excel)
• Ranking of best-performing locations
• Mobile-first and low-bandwidth friendly
### Admin
• Secure login
• Add, edit and delete locations
• Add, edit and delete measurements
• Search, filter and paginate measurements
• Designed for researchers and lab staff
## Tech stack
### Frontend
• EJS – server-side templating
• Vanilla JavaScript – client-side logic
• CSS (mobile-first) – custom styling, no UI framework
• Leaflet.js – interactive map using OpenStreetMap tiles
### Backend
• Node.js
• Express.js – web server & routing
• MongoDB – database
• Mongoose – object data modeling (ODM)
### Data & utilities
• ExcelJS – importing and exporting Excel files
• dotenv – environment variable management
• express-session – authentication sessions
• connect-mongo – session storage in MongoDB
## Installation & setup
1. Clone the repository
`git clone
github.com`
2. Install dependencies
`npm install`
3. Environment variables
Create a .env file in the project root:
```
PORT=3000
MONGODB_URI=mo …