This cool weather station from Instructable user deba168 uses a 3D printed Stevenson Shield , a WeMos D1 Mini with ESP8266 , solar panel , TP4506 charging board and a few other parts.
We really like this look the the 3D printed case and the integration of the solar panel.
The station relays the weather to an app on your cellphone.
Deba168 does use code to put the microcontroller to sleep, but they do not mention how long battery life is with the solar panel.
This Instructable from user educ8s one uses an Arduino Due, 3.2″inch TFT Display , RTC, DHT22 Humidity Sensor, NRF24L01.
While there are a lot of components to this one and using an Arduino Due is a bit of overkill, we do like the display.
This project from DIY Hacking is a bit on the simple side, only reporting temperature and humidity.
Probably a good project for beginners.
This weather station seems to have it all. It has wind direction, wind speed, temperature, humidity and rainfall. What data the maker kkingsbury from Instructables could not generate on his own is taken from Weather Underground.
Using a Raspberry Pi as the micrcontroller, the software for this weather station is written in Python. Probably not a beginner project. You can also buy the anemometer / wind vane / rain bucket like this Weather Rack instead of making one.