Skip to content

Latest commit

 

History

History
121 lines (86 loc) · 2.79 KB

README.md

File metadata and controls

121 lines (86 loc) · 2.79 KB

Deprecated! See the new repository

Zephyr

https://www.zephyrapp.nz/

Table of Contents

Introduction

Zephyr is an interactive weather map aimed towards paraglider pilots in New Zealand, scraping real-time data from various stations across the country.

Features

  • Real-time data - average wind speed, gust, direction, and temperature.
  • Webcams - live images from various cameras.
  • Interactive map - easy to use with intuitive colours and icons.
  • Charts and tables - a tidy representation of each station's data over time.
  • Live grid view - easy to integrate with XCTrack for in-flight updates.
  • Mobile-first design - scalable across different screen sizes.
  • Help tab - provides a way for users to contact the developer.
  • Admin-only area - for adding new weather stations and viewing errors.
  • Error checker - scheduled function to identify issues with stations or the scraper.


Interactive map view


Tables and graphs


Live grid view on mobile

Technologies

Frontend

  • React
  • Mapbox GL
  • MUI
  • Recharts

Backend

  • Cloud Firestore
  • Google Cloud Functions
  • Firebase Authentication

Setup

Clone the Repository

git clone https://github.com/kyzh0/zephyr-firebase.git

Initialise Environment Variables

Follow the instructions in client/.env.example and functions/.env.example to set up your own environment variables.

Client

# go to directory
$ cd ./client

# install dependencies
$ npm install

# run the web app
$ npm run start

Functions

# go to directory
$ cd ./functions

# install dependencies
$ npm install

# run emulators
$ firebase emulators:start

# deploy functions
$ firebase deploy --only functions

Contribute

Spotted a bug, or got a new feature in mind? Open a new issue, or even better, fork the repo and submit your own pull request! Any help on open issues is appreciated.

Acknowledgements

Thanks to Jonas Yang for providing the icons and logo design.

License

MIT © 2024 Kyle Zhou