A personal weather station that I developed using an Arduino and a web server.
The station is really simple. It’s an Arduino Uno with an Ethernet shield and a Sparkfun Weather Shield. The weather shield has a thermometer, barometer, hydrometer, and light sensor on it. I have an anonometer, wind vane, and rain collector connected to the shield as well. The Arduino polls the sensors continuously and serves the data up in JSON format on a webpage it hosts. A separate server hosts the frontend website, which polls the JSON page hosted by the Arduino to keep its data fresh.
The Sparkfun weather shield is a wonderful little board that costs $40. It comes without headers, so you’ll need to solder some on if you want to stack it on an Arduino. It’s very easy to work with, and tons of sample code is provided via GitHub projects on the shield’s product page on Sparkfun. You can find it here. Note that, using the provided libraries, it will only work with an Arduino Uno or Sparkfun Redboard. There is also a link on that page that has a project where the shield was used with a Rasberry Pi running Windows 10 to make a weather station.
You can see my weather station in action here (currently offline due to server work).