Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/michaelcurrin/open-air
Report on air quality sensors in Africa using APIs of open data projects.
https://github.com/michaelcurrin/open-air
air-quality air-quality-sensor github-pages jekyll mustache-templating open-data south-africa static-site
Last synced: 15 days ago
JSON representation
Report on air quality sensors in Africa using APIs of open data projects.
- Host: GitHub
- URL: https://github.com/michaelcurrin/open-air
- Owner: MichaelCurrin
- License: mit
- Created: 2019-11-28T12:50:54.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2019-12-14T10:05:18.000Z (about 5 years ago)
- Last Synced: 2024-11-14T22:06:46.901Z (3 months ago)
- Topics: air-quality, air-quality-sensor, github-pages, jekyll, mustache-templating, open-data, south-africa, static-site
- Language: HTML
- Homepage: https://michaelcurrin.github.io/open-air/
- Size: 999 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Open Air
> Report on air quality sensors in Africa using APIs of open data projects.## Project website
- [michaelcurrin.github.io/open-air](https://michaelcurrin.github.io/open-air/)
### Sample screenshot
![Sample image](docs/preview.png)
## Background
This project exists because I went to a workshop in South Africa where air quality sensors were put together. These sensors contribute air quality measurement data to the [luftdaten.info](https://luftdaten.info) project. This data and those of other countries is made available through their APIs. This projects makes it easy to see the measurements of the South African (`ZA`) sensors.
This was later expanded to include the Open Africa site's data too for several African countries.
## Local development
### Libraries
- [Jekyll](https://jekyllrb.com/) - To build the static site. No Jekyll templating or themes are used though.
- Bootstrap - To add styling to the tables (from [tutorial](https://getbootstrap.com/docs/4.3/content/tables/)), the navbar (from [tutorial](https://getbootstrap.com/docs/4.3/components/navbar/#toggler)) and to the page overall.
- JQuery - To handle fetching JSON data.
- Mustache JS - To create tables easily using a template and dynamic data. These templates have to be escaped using the Jekyll `raw` tag.### Setup
1. Clone the project from the original or a fork. For example:
```bash
$ git clone [email protected]:MichaelCurrin/open-air.git
```
2. Install [Jekyll](https://jekyllrb.com/) globally.### Run
1. Start the server.
```bash
$ cd
$ jekyll serve
```
1. Open this URL in the browser.
- http://localhost:4000/open-air/## Setup on Github Pages
1. Use this repo or a fork on Github Pages.
2. Go to Settings.
3. Go to Github Pages section.
4. Enable website using `master` branch. The page will reload.
5. Navigate to the section again and use the URL you see.## Future development
- This project could be expanded to allow a user choice of country using a droplist for Luftdaten page.
- Add count of rows at the top of a sensor page.
- Add sort to tables.
- Add filter to tables. Such as by pin type or location or value range.
- Freeze top row of table.
- Fix navbar to the top of the screen.## License
[MIT License](LICENSE)
Feel free to fork this project and submit a PR with improvements. Or use this as a template for your own data project, with a link back this this repo.