Skip to content

qevka/cloudwatch

Repository files navigation

Welcome to cloudwatch 👋

Documentation Maintenance License: ISC

cloudwatch - Weather App cloudwatch - Weather App

This is a simple app that queries the metaweather api and displays weather data from around the world.

Core Features

  • Getx State Management (dependency injection / MVC).
  • Ability to change Temperature Units (Celsius/Fahrenheit).
  • Particle Animators for different weather conditions.
  • Data models that include all of MetaWeather's data points for possibility of future feature development.
  • Separate Settings screen for future settings and cleaner design.
  • Settings persist after app is closed.

Potential Improvements

  • Auto-Completing textfield (when someone types a city it shows a list of citys that match what they have typed so far) like google maps.
  • The Metaweather api doesn't include all the cities in the US or world just a small subset. If we continued using this API we could make a function that would return the lat and lon for specific cities, then we could query the api using lat and lon which then would return the id for the nearest city. Having a way to get the (woeid) for the nearest available city would be helpful.
  • The ability to see a whole weeks forcast instead of just the current weather.
  • Ability to persist different locations or a home location so that the user doesn't have to keep to keep entering their city in over and over again.
  • Better code coverage with unit tests.

How to run the App

  1. Clone the repo to a local directory on your PC or Mac
  2. Open the App in Android Studio, VSCode, or XCode (if opening in xcode be sure to open the /cloudwatch/ios/Runner.xcworkspace file).

How to Run on different IDEs

  • Android Studio - click the play button on the top of the IDE (make sure you have a simulator selected).
  • XCode - Open the IDE and click the play button at the top of the window
  • VSCODE/Terminal - open a terminal window and type the following commands

open a simulator

run the command below to open a new IOS simulator instance.

open -a simulator

From the root directory of the the project run the following command in terminal.

Flutter run

If you have a real device plugged in and want to build on that device and be able to unplug from your PC or Mac after use the following --release flag.

Flutter run --release

Run tests

flutter test

Author

👤 Caleb Maccarone

🤝 Contributing

Contributions, issues and feature requests are welcome!
Feel free to check issues page.

Show your support

Give a ⭐️ if this project helped you!

📝 License

Copyright © 2022 Caleb Maccarone.
This project is ISC licensed.


About

A simple weather app

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published