Git Product home page Git Product logo

lucaslima939 / skywatch-project Goto Github PK

View Code? Open in Web Editor NEW
3.0 1.0 0.0 5.15 MB

Using SkyWatch you can check out the current weather for your localization, see the forecast for the next 4 days and share short videos showing the current weather.

Home Page: https://www.figma.com/file/h1ZoyPKTIGRGXfVwYH6WJP/SkyWatch-(FoxBox)?type=design&node-id=0%3A361&mode=design&t=fsFKnHapC4GV3en9-1

Kotlin 0.13% Ruby 1.37% Swift 0.67% Objective-C 0.04% Dart 97.80%
api firebase flutter forecast weather

skywatch-project's Introduction

What's SkyWatch

SkyWatch is a cross-platform application developed using Flutter framework and it runs on the Android & iOS platforms.

Using SkyWatch you can check out the current weather for your localization, see the forecast for the next 4 days and share short videos showing the current weather.

Dependencies

UI Reference

For compare the final UI with the designed UI/UX see Figma's SkyWatch project, which presents detailed components and color palettes.

About the project

This project follows the Clean Architecture Pattern to separate each responsibility correctly.

The most intern layer is the entities' layer where we define the model's interfaces, then we have the use cases' layer where we define the actions the app can perform, the presenter's layer where we receive and transform data, and the most external is the UI layer where we update the events on screen.

Clean Architecture

The project is composed by one single module, Home Module, but the modular composition allows us to add new modules in the future. Each module is independent by itself and global dependencies are injected by the CoreModule.

We're using Modular Package as router and dependency injector.

The folder structure organize the project as: data, domain and presentation. In order to follow the Clean Architecture for Flutter.

Folder Structure

Some implemented Design Patterns in this project:

  • Adapter;
  • Interface;
  • Singleton;
  • Factory;
  • Builder;

The project uses Bloc as State Manager and it allows a robust management with easy mantaininment. Bloc receives events and emits states, updating the pages with BlocBuilders & BlocListeners.

Coding Principles

The SOLID principles and others are extremely important to any project to follow, it makes the code more readable, the project scalable and easier to maintain.

SOLID Principles

Tests

You can find some tests structures on the /test folder. The folder follows the src folder structure to make easier the identification.

skywatch-project's People

Contributors

lucaslima939 avatar

Stargazers

Carlos Eduardo avatar Wellington Andrade avatar André Tonelli avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.