The Weather Forecasting App is a minimal web application that allows users to:
- Save locations
- Using manually entered coordinates
- By entering an address, which is converted to coordinates using the Geocode.xyz API
- By IP address (detected and converted to coordinates using ipapi)
- View a list of saved locations
- Fetch and display 7-day weather forecast data (temperature highs and lows) for a specific location using the Open Meteo API.
- Visualize daily high and low temperatures each day using Image-Charts.
This app uses SQLite3 as the database. No additional setup is required for development.
git clone https://github.com/briHalterman/weather-forecasting-app.git
cd weather-forecasting-app
bundle install
rails s
Navigate to http://localhost:3000/locations to use the app.
This project includes automated tests.
To run all tests, use:
bundle exec rspec
- Ruby on Rails: Backend framework
- HTTParty: API Integration
- ActiveRecord: ORM for database management
- RSpec & Capybara: Automated testing
- Postman: Manual API testing
- Limited Error Handling: Some edge cases are not yet handled.
- Limited Styling: The app lacks CSS styling.
- Limited CRUD Functionality: Users can create and read locations but cannot yet update or delete them.
- Mixed Units: Temperature is displayed in Fahrenheit while other data is displayed with metric units; A toggle to switch between US customary units and metric units would be a user friendly addition.
- Accessible Design
- Chart Limitations: Temperature chart does not properly handle negative temperatures.