Fetch weather data from cities around the globe!

Overview

Weather Today: A weather app built with mobX and the MetaWeather API

This project is my first one build in flutter, and I was inspired by the Flutter Modular architecture to structure the folders:

Weather Today app preview

The project uses the MetaWeather API to fetch a list of cities and their respective weather data such as minimum and maximum temperature, weather state, date, wind speed and direction.

Installing the project

You can install this app on your android phone downloading the apk file weather-today.apk in this repository.

App Overview

The application is pretty simple, it is a one page application with a search bar and it has mainly three states: the first screen when the user is not searching anything, the main screen that shows the user data fetched from the API, and an error screen in case something wrong happens.

App Structure

This app was made as an extension of the terminal app built in the Dart complete course from Andrea Bizzotto on Udemy, but as I transformed it into a flutter app, I felt the need of a project architecture. For that reason I chose to sctucture my project based on the Flutter Modular architecture, because I find it easy to understand and also scalable.

The project folders are structured like this:

/lib
  /models
  /modules
    /search
      /repositories
      /results
  /theme

Inside models you can find the classes created to best represent data from the API.

Modulesare the pages inside the app and since it is a unique page application, we only have the search module. Inside it we have the repository, responsible for fetching data from the API.

Packages used in this project

Credits

This project was made inspired by the app built on the Dart complete course by Andrea Bizzotto. I have to thank the girls from Flutter Girls who always support and help me in every issue I bump into, you are the best!

LICENSE: MIT

You might also like...

Flutter_weather_forecast - A weather forecast widget for Turkey

Flutter_weather_forecast - A weather forecast widget for Turkey

Flutter_weather_forecast - A weather forecast widget for Turkey.Weather data provided by the General Directorate of Meteorology.

Nov 2, 2022

Cryptocurrency App with MVP Design Pattern to track all the coins data in realtime for android & iOS . Written in dart using Flutter SDK.

Cryptocurrency App with MVP Design Pattern to track all the coins data in realtime for android & iOS . Written in dart using Flutter SDK.

Flutter CryptoCurrency App (MVP) Cryptocurrency App with MVP design pattern to track all the coins data in realtime for android & iOS . Written in dar

Dec 30, 2022

A Flutter News application using data from newsapi.org

A Flutter News application using data from newsapi.org

A Flutter News application using data from newsapi.org

Oct 1, 2021

An app that keeps track of what you're watching and allows you to watch the shows from within the app itself. It uses Kitsu API as it's data source.

Anilemon A small app to keep track of and watch your favorite anime. Features Save anime that you are interested in in your library Open the website y

Oct 12, 2021

A cross-platform BlockChain Based Application that performs Data and Sentimental Analysis using Machine Learning Algorithms.

DynaMedico Mobile App A new Flutter application. Getting Started This project is a starting point for a Flutter application. A few resources to get yo

May 10, 2022

This is an E-commerce App that you can buy goods, it has no data base so all you see in this app are created as default

This is an E-commerce App that you can buy goods, it has no data base so all you see in this app are created as default. Once I create a server and connect with it, I will create another repository or simply update this one.

Feb 10, 2022

Flutter App with using future builder and json data

Flutter App with using future builder and json data

HOROSCOPES APP A new Flutter project with json data and Future Builder. Getting Started This project is a starting point for a Flutter application. A

Jan 26, 2022

gceditor - a client/server application for creating a persistent data of an application

gceditor - a client/server application for creating a persistent data of an application

gceditor - a client/server application for creating a persistent data of an application

Dec 17, 2022

A data backend agnostic repository pattern package for Dart and Flutter

deposit A data backend agnostic repository pattern package for Dart and Flutter. Overview The goal of this package is to provide a repository pattern

Apr 3, 2022
Comments
  • Error: No address associated with hostname, errno = 7

    Error: No address associated with hostname, errno = 7

    Hi, I just installed file .apk on my Samsung A9. I have connected Wifi internet, filled somes city name. And I dont know why it appeared this bug. Could you guys explain what am wrong? Or fix that? Or tell me a solution to fix that? Thank you! Regards. 269336759_494339708679722_3504341621798319360_n

    opened by cocvu99 1
  • feat/gh-actions: add workflow

    feat/gh-actions: add workflow

    This add a GitHub Actions workflow that runs on every push, builds and creates a release draft that can be released. Adapted from the limpazap workflow [1].

    [1] https://github.com/lucasew/limpazap/blob/master/.github/workflows/release.yml

    Signed-off-by: lucasew [email protected]

    opened by lucasew 0
  • APK file in the repo

    APK file in the repo

    APKs should be uploaded on releases, you can solve this using git rebase, dropping c29f530144c9cac0102abf10d5d22945556702b2 and force-pushing. I recommend you do this on a separate branch for training if you are afraid to f up then when you are sure about what you are doing then do on master.

    I use a workflow on limpazap to build an APK for each commit creating a release draft, I will need to make some adaptations because the code is not in the source root but I am willing to send a PR.

    BTW nice work there, the app looks pretty nice

    opened by lucasew 0
Owner
Rafaela Martins
Curious flutter dev
Rafaela Martins
Flutter Advanced: Background Fetch | Run code in the background Android & iOS | Run code in the background Android & iOS

flutterbackground A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you starte

Pawan Kumar 40 Dec 16, 2022
A basic Flutter app that displays the time around the world

Flutter World Time app A basic Flutter app that shows the user what the time is in different places around the world This is a basic app I made to pra

Wesley Noijen 4 Feb 4, 2022
A simple fully working weather app with state management build using flutter.

A simple fully working weather app with state management build using flutter.

null 5 Apr 12, 2022
A Brand New Flutter Weather App

A Brand New Flutter Weather App

null 3 Aug 25, 2022
Weather App Using Flutter

weather_app A new Flutter project. ITS NOT COMPLETED YET!! Getting Started This project is a starting point for a Flutter application. A few resources

Muhammad S. dev 2 Oct 6, 2022
Weather app with http

weather_application_http A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you

null 0 Oct 29, 2021
A Flutter Project to display arduino sensors values about weather

worldwide_weather_watcher A new Flutter project. Getting Started This project is a starting point for a Flutter application. The Arduino send each 10

null 3 Nov 2, 2022
This is a sample Flutter Weather Forecast App for Android and iOS.

Basic Flutter (Android + iOS) App (Dart + Dio) - Weather App This is a very beginning friendly project of Flutter. A simple weather forecast App using

Hasan Abdullah 31 Nov 29, 2022
ESP32 Weather Station with Flutter

ESP32-Weather-Station-with-Flutter Full Tutotial on Youtube : https://youtu.be/1pDnYhamIeA Getting Started This project is a starting point for a Flut

null 0 Jan 13, 2022
A Simple Weather App Using Flutter

Hi there, I'm Ayush Maji ! ?? weather_app Use the Weather app to check the weather for your current location or in other places. You can view the hour

AyushMaji 3 Apr 20, 2022