Skip to content

Latest commit

 

History

History
87 lines (68 loc) · 3.72 KB

README.md

File metadata and controls

87 lines (68 loc) · 3.72 KB

🌬 Zephyr

Light Zephryos blows the sweetest breeze.

— The Anacreontea, Fragment 41 (trans. Campbell, Vol. Greek Lyric II) (Greek lyric C5th B.C.)

Project goals

Based on weather conditions, help a drone photography pilot answer the following question(s):

  • Can I fly at X location today?

(Stretch Goals)

  • What about the next 7 days?
  • How does Y location compare, better or worse?
  • Which date/site combinations are best so I can plan my week?

Typically, the best conditions are:

  • daylight
  • light to no wind
  • no precipitation
  • low humidity
  • moderate temperatures
    • too cold and batteries suffer
    • too hot and electronics overheat

Roadmap

Core

  • get forecast for a given location (today)
    • sunrise / sunset time
    • wind speed
    • temperature / humidity
    • precipitation
  • invent some kind of at-a-glance aggregate indicator
    • in other words, answer the question: can I fly here today?

Possible Future Enhancements

  • use browser geolocation API to automatically get user's location on load
  • show simple map of location
  • get multi-day forecast for a given location / date
  • allow multiple locations
  • more in-depth data visualization
    • sunrise / sunset time
    • wind speed over time
    • temperature / humidity over time
  • user authentication
  • save multiple locations to user account

Stack

Tool Purpose
React and TypeScript component-driven development with static types
Next.js routing, SSR
isomorphic-unfetch isomorphic async/await data fetching
Sunrise Sunset sunrise/sunset times
darksky-api TypeScript type defs for API response
DarkSky API weather data
Mapbox API mapping / geocoding data
Now deployment

Running project locally

  1. check out repository
  2. run npm install from the root directory
  3. run npm run dev
  4. check it out on http://localhost:3000/ 🎉