A Node.js based web app to display user desired weather data from a WeatherLink station.
5.2K
KenyonWX is a Next.js app to display desired weather data from a weather station connected to your WeatherLink account in a clean, simple fashion.
KenyonWX was built using:
It is easy to get a copy of KenyonWX running locally.
In order to run KenyonWX locally, the following will need to be installed on your development environment:
This project requires that you have a WeatherLink v2 API Key and Secret.
The WeatherLink Developer Portal outlines how to get your API key at https://weatherlink.github.io/v2-api/tutorial:
To retrieve your WeatherLink v2 API Key and API Secret you can go to WeatherLink.com and visit the Account page at https://www.weatherlink.com/account.
Once on the Account page you can click the Generate v2 Key button to create a new WeatherLink v2 API Key and API Secret.
Navigate to the location on your development machine where you want to place this project's directory and clone the repository by running the following command:
git clone https://github.com/mike-weiner/kenyonwx.git
This project requires several environmental variables to be set. Before running the project locally for this first time, you must set the necessary variables.
The Next.js KenyonWX project requires several additional environment variables. Set the values of these variables:
.env.dev in the project's root directory..env.dev file, add the content found below. Replace any text contained within < > with your own values.MEMCACHEDCLOUD_SERVERS=memcached:11211
WEATHER_LINK_API_KEY="<your_weather_link_v2_api_key>"
WEATHER_LINK_API_SECRET="<your_weather_link_v2_api_secret>"
WEATHER_LINK_BASE_API_URL="https://api.weatherlink.com/v2/"
WEATHER_LINK_STATION_ID=<your_weather_station_id_from_weather_link_account>
WEATHER_LINK_SUMMARY_URL=<your_weather_station_weather_link_live_summary_url>
When you are ready to run the project locally:
docker is started on your machine.make up.
docker compose to start both the front-end web application and the backend instance of memcached for you.3000 is used for the web application. You can specify a different port (so long that it is not used) by running make up PORT=xxxx where xxxx is your numerical port number (e.g. 3001)make up command completes, visit localhost:3000 in your browser and you should see the website running on your local machine using your own weather station's data!make rebuild.make down and all Docker resources will be cleaned up for you.You can easily change what weather data is pulled from your WeatherLink weather station by modifying parseWeatherLinkAPIResponse(data) within /src/utils/weather-link.js.
You will then also need to update the /src/pages/index.js view with the updated data that you are pulling from the WeatherLink API response.
Information about what type of weather data is available within the WeatherLink API from different weather stations and sensors can be found here: https://weatherlink.github.io/v2-api/interactive-sensor-catalog.
Don't forget to re-build your container (make rebuild) for your changes to take effect on your local environment.
All contributions are welcome! First, open an issue to discuss what contributions you would like to make. All contributions should be conducted in a feature/ branch as a PR will be required before any changes are merged into the main branch.
Distributed under the MIT License. See LICENSE.txt for more information.
Content type
Image
Digest
sha256:46a87cdcc…
Size
273.9 MB
Last updated
9 days ago
docker pull michaelweiner/kenyonwx