robDevs / simple-weather

A weather app designed with a simple user interface. Built with RayLib.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

simple-weather

A weather app designed with a simple user interface. Built with RayLib.

About

This application pulls weather data from OpenWeather. The data is fetched over HTTP using libCurl. Once recieved the data is parsed using cJSON.

Why

The project was created for a class called Object Oriented Programming at the University of Montana. The goal was to build a project using a Model View Controller design pattern, a creational pattern, and another design or behavioral pattern. For my project I used the Singleton pattern to create the view which ensures that only one instance of the view is ever created. I also used a Facade pattern to bundle all of the functions for fetching, parsing, and returning weather data for a given location. This allows the controller to only worry about pulling data from a city and using that with the view to create a usable application. The controller does not have to worry about how data is fetched or parsed.

Dependencies

Compiling & running

This project was made for Linux.

$ git clone https://github.com/robDevs/simple-weather.git
$ cd simple-weather/src
$ make
$ ./simple-weather

About

A weather app designed with a simple user interface. Built with RayLib.

License:GNU General Public License v3.0


Languages

Language:C 73.4%Language:C++ 25.9%Language:Makefile 0.6%