Skip to content

Latest commit

 

History

History
148 lines (124 loc) · 5.19 KB

README.md

File metadata and controls

148 lines (124 loc) · 5.19 KB

weather-app

App mockup

Weather app is a design implementation of Weather Forecast App, designed by Maulana Farhan Najib.

Weather App is an Android-only application, built with Flutter, as a study of Flutter. I have tried to collect all features of the original design, but some I did not found useful, like notifications, which I replaced with a button to show more info about the weather. It uses SQLite to store recent searches and favorite places.

Table of Contents

Images

Features

  • ✅ Detailed forecast
  • ✅ Up to seven days forecast
  • ✅ Coverage from anywhere
  • ✅ Multi-language (JA, PT, EN, ES, AR)
  • ✅ Custom icons for each weather condition

To-Do

  • Implement Hive DB
  • Implement search by speech
  • Add more languages
  • Add notification system
  • Add home screen widgets
  • Add dark mode
  • Add settings page
  • Add splash page
  • Add button to check updates (or smth)
  • Translate README to PT-BR

Directory Structure

lib/
├── main.dart
├── database/
│   └── database.dart
├── l10n/
│   ├── app_en.arb
│   ├── app_es.arb
│   ├── app_ja.arb
│   └── app_pt.arb
├── models/
│   ├── details_arguments.dart
│   └── place.dart
├── pages/
│   ├── forecast_page.dart
│   ├── home_page.dart
│   ├── map_page.dart
│   ├── no_gps_page.dart
│   └── search_page.dart
├── services/
│   ├── geo_api.dart
│   └── weather_api.dart
├── utils/
│   └── utils.dart
└── widgets/
    ├── card_forecast.dart
    ├── card_info.dart
    └── card_weather.dart

My process

Built with

  • Flutter
  • OpenWeatherMap API
  • SQLite database
  • Shared Preferences
  • Google Maps API
  • Google Place API

Packages I'm using

How to use

Requirements

Before beginning, make sure you have installed Flutter.

Building

Clone the repo to your local computer

$ git clone https://github.com/samuel-s-marques/weather-app

Access the project's folder in your cmd/terminal

$ cd weather-app

Fulfill the .env.example file with your API keys and remove the .example from the file

API_KEY= openweather map api key
GOOGLE_PLACE_API_KEY= google place api key

Add the following line on android/local.properties file

MAPS_API_KEY= your google maps api key

For OpenWeatherMap API, check this link. For Google APIs, check this link

Now you can open the project with VSCode or Android Studio and build it.

Pull Requests

I welcome and encourage all pull requests. It usually will take me within 24-48 hours to respond to any issue or request.

Created & Maintained By

Samuel Marques (LinkedIn).

"Weather Forecast App" by Maulana Farhan Najib is licensed under CC BY 4.0.

Mockups provided by Previewed.

Icon provided by FreeIconsPng.