Version - 0.1.0
Trying to plan an outdoor adventure but have too many options? Is researching weather for all your sweet spots a major pain? Do you know a little bit of Python?
Problem Solved!
IdealSpot accesses public data APIs to gather different types of data important for planning and choosing an ideal location for your outdoor journeys. Data is gathered, analyzed and transformed to automate scoring and reporting of all your favorite spots based on your exact needs.
In Production
- Generate spots using lat / long coordinates
- Score each location using customized targets
- Weather targets using free OpenWeatherMaps API
- Ideal temperature target
- Ideal wind target
- Ideal cloud target
- Rain accumulation target
- Snow accumulation target
- Generate score summary report for each spot
Future Features
- Generate automated forecast reports for spots
- Map visualization for scores for spots
- Other types of non-weather targets
- Campsites / Trails
- Resort proximity
- Transportation infrastructure
- Support for more weather APIs
Generating scores / data requires three major steps below:
- Step 0: Obtain free API key at openweathermap.org by opening a free account
- Step 1: Generated Spot classes for each lat / long combination
- Each Spot should have a string name as an identifier
- Spot classes can be initialized manually or generated from a pandas DataFrame
- Step 2: Build customized WeatherTarget using decorator options
- Customization is enabled by utilizing a decorator pattern on the WeatherTarget base class
- Step 3: Utilize static methods of EvaluateSpots class to score spots and generate reports
Examples can be found in the examples folder.
Currently this package utilizes the OpenWeatherMap API and requires that you create a free person account for an API key.
The forecast targets utilize the 5 day / 3 hr forecast feed.
Future development will introduce support for additional APIs as well as a generalized user defined API calls.