Challenge-vip-delivery - Project for VIP (Clean Swift) Architecture Dev Sprints on Devpass

Overview

VIP (Clean Swift) - Delivery App 🍕

Neste desafio, aplicaremos conceitos da arquitetura VIP para finalizar a implementação de um aplicativo.

Desenvolveremos as diversas camadas que formam os módulos da aplicação: Interactor, Presenter, Router, entre outras tarefas.

drawing drawing drawing

Iniciando os trabalhos

  1. Clone este repositório na sua máquina.
  2. Abra a pasta solutions e acesse o projeto referente à sua Sprint.
  3. Faça um build e rode o projeto. ▶️

Sobre a Devpass

A Devpass é uma comunidade de pessoas desenvolvedoras de alto potencial acelerando suas carreiras através de desenvolvimento de produtos reais, como o Hereminders, e conexões com as principais lideranças de tecnologia do país, através de mentorias particulares e Tech Talks.

Se interessou? Acesse www.devpass.com.br e se inscreva na nossa lista para ficar por dentro das novidades!

Comments
  • MenuItem module's structure added.

    MenuItem module's structure added.

    ------------ APAGAR ------------ Implement MenuItem module's structure

    • 🚧 - Work in progress ------------ APAGAR ------------

    Description

    Build module structure according to VIP/Clean Code architecture.

    Checklist:

    Coloque um x nas caixas que se aplicam.

    • [X] Implement structure (folders and files) following VIP/Clean Code architecture
    • [X] The module must work after the structure implementation. It should be possible to instantiate it and show it on screen
    • [X] Implement only the base structure, not the API integration and presentation of the data coming from it
    opened by abymathew0485 0
  • 🚧 - Settings Module - Basic Structure

    🚧 - Settings Module - Basic Structure

    Description

    Task: Implement Settings module's structure

    Acceptance criteria:

    • [x] Implement structure (folders and files) following VIP/Clean Code architecture
    • [x] The module must work after the structure implementation. It should be possible to instantiate it and show it on screen
    • [x] Implement only the base structure, not the API integration and presentation of the data coming from it
    • [] Implement unit tests (Data, Domain, Presentation)

    Checklist:

    • [x] Não adiciona código duplicado
    • [] Não contém código comentado
    • [] Não contém código WIP

    Evidências da feature:

    | iPhone SE | iPhone 12 Max | | ------ | ------ | | print | print |

    opened by dbgarcia 0
  • ✨Refactoring Detail view

    ✨Refactoring Detail view

    Descrição simples da nova feature

    Refactoring da interface de Detalhe de restaurante para carregar dados da API

    Checklist:

    Coloque um x nas caixas que se aplicam.

    • [X] Não adiciona código duplicado
    • [X] Não contém código comentado
    • [X] Não contém código WIP
    opened by jjfernandes87 0
  • ✨ Refactoring

    ✨ Refactoring

    Descrição simples da nova feature

    • Refactoring para estruturação do projeto

    Checklist:

    Coloque um x nas caixas que se aplicam.

    • [X] Não adiciona código duplicado
    • [X] Não contém código comentado
    • [X] Não contém código WIP
    opened by jjfernandes87 0
  • ✨ Adicionando múltiplas chamadas na Home e tornando reativa aos dados de API

    ✨ Adicionando múltiplas chamadas na Home e tornando reativa aos dados de API

    Descrição simples da nova feature

    • Fizemos o refactoring na home para que ela possa responder corretamente aos dados de API e também interação do usuário

    Checklist:

    Coloque um x nas caixas que se aplicam.

    • [X] Não adiciona código duplicado
    • [X] Não contém código comentado
    • [X] Não contém código WIP

    Evidências da feature:

    | iPhone 12 Max | ------ | | Captura de Tela 2022-08-02 às 20 18 38 |

    opened by jjfernandes87 0
  • Criando domain e data do Settings

    Criando domain e data do Settings

    Descrição simples da nova feature

    Criando Domain e Data settings

    Checklist:

    Coloque um x nas caixas que se aplicam.

    • [x] Não adiciona código duplicado
    • [x] Não contém código comentado
    • [x] Não contém código WIP
    opened by guilhermepratac 0
  • VIP module - settings

    VIP module - settings

    Descrição simples da nova feature

    Implementing VIP architecture

    Checklist:

    Coloque um x nas caixas que se aplicam.

    • [x] Não adiciona código duplicado
    • [x] Não contém código comentado
    • [x] Não contém código WIP
    opened by guilhermepratac 0
  • ✨Adicionando testes unitarios no module de Home

    ✨Adicionando testes unitarios no module de Home

    Descrição simples da nova feature

    Adicionando testes unitários

    Checklist:

    Coloque um x nas caixas que se aplicam.

    • [X] Não adiciona código duplicado
    • [X] Não contém código comentado
    • [X] Não contém código WIP
    opened by jjfernandes87 0
  • ✨ - Implementing VIP Architecture at class AddressSearch ✨

    ✨ - Implementing VIP Architecture at class AddressSearch ✨

    Descrição simples da nova feature

    Implementing VIP architecture

    Checklist:

    Coloque um x nas caixas que se aplicam.

    • [x] Não adiciona código duplicado
    • [x] Não contém código comentado
    • [x] Não contém código WIP

    Evidências da feature:

    Screen Shot 2022-07-28 at 22 02 22
    opened by Brun41v35 0
  • Apply SRP on login class and names

    Apply SRP on login class and names

    Contexto

    A RLLoginViewController possui muitas responsabilidades.

    Solução

    Neste MR estão sendo aplicados conceitos de SRP para simplificar a classe

    • Colocar nomes de variáveis mais objetivos.
    • Criar um coordinator para cuidar de navegação e apresentação de alertas da classe.
    • Criar um UseCase apenas para validação do email. ❗️️️❗️️️❗️️️ PR que, se aprovado, deve ser mergeado.
    opened by roodrigolemos 0
  •  encapsulamento e remove singleton

    encapsulamento e remove singleton

    ------------ APAGAR ------------ Emojis para os titulos dos MR's

    • ✨ - Introduce new features
    • 🚧 - Work in progress More on: https://gitmoji.dev ------------ APAGAR ------------

    Descrição simples da nova feature

    • deixar de usar Singleton BadNetworkLayer
    • deixar de usar funcao estática de Globals
    • aplicar encapsulamento nas variáveis e funções da Controller

    Checklist:

    Coloque um x nas caixas que se aplicam.

    • [X] Não adiciona código duplicado
    • [X] Não contém código comentado
    • [X] Não contém código WIP

    Evidências da feature:

    | iPhone SE | iPhone 12 Max | | ------ | ------ | | print | print |

    opened by TatianaRico 0
  • ✨ - Settings Module (Stage 2)

    ✨ - Settings Module (Stage 2)

    Description

    Task: Implement Settings module's Interactor

    Acceptance criteria:

    • [x] Change files in the "Data" folder as needed by the module
    • [x] Change UseCases file (“Presentation” folder) as needed by the module
    • [x] Create UseCase for the module (folder “Domain/UseCase”)
    • [x] Change PresentationLogic protocol as needed by the module

    Checklist:

    • [x] Doesn’t add duplicated code
    • [x] Doesn’t contain commented code Não contém código comentado
    • [x] Doesn't contain WIP code

    Feature Preview:

    | iPhone SE | iPhone 12 Max | | ------ | ------ | | print | print |

    opened by dbgarcia 1
  • 🚧 - CategoryRouter added

    🚧 - CategoryRouter added

    🚧 - Work in progress Implement functionality of the Router layer (navigation methods for other modules).

    [x] Modify Router file according to module navigation needs (RoutingLogic, DataPassing, navigation methods)

    opened by abymathew0485 0
  • ✨ RestaurantList and CategoryList module to VIP

    ✨ RestaurantList and CategoryList module to VIP

    Description of the feature

    In this PR i created the modules for both RestaurantList and refactored the CategoryList module to outside of HomeViewController using the Many View Controllers approach.

    Checklist:

    Coloque um x nas caixas que se aplicam.

    • [x] It does not add duplicated code
    • [x] It does not contain commented code
    • [x] It does not contain WIP code
    opened by matheuslenke 0
  • ✨ - Settings Module (Stage 1)

    ✨ - Settings Module (Stage 1)

    Description

    Task: Implement Settings module's structure

    Acceptance criteria:

    • [x] Implement structure (folders and files) following VIP/Clean Code architecture
    • [x] The module must work after the structure implementation. It should be possible to instantiate it and show it on screen
    • [x] Implement only the base structure, not the API integration and presentation of the data coming from it
    • [x] Implement unit tests

    Checklist:

    • [x] Doesn’t add duplicated code
    • [x] Doesn’t contain commented code Não contém código comentado
    • [x] Doesn't contain WIP code

    Feature Preview:

    | iPhone SE | iPhone 12 Max | | ------ | ------ | | print | print |

    opened by dbgarcia 1
  • HomeCategory Worker added

    HomeCategory Worker added

    ------------ APAGAR ------------

    • 🚧 - Work in progress ------------ APAGAR ------------

    Descrição simples da nova feature

    Implement functionality of the Interactor layer (fetch data and make it available to the Presenter layer).

    Checklist:

    Coloque um x nas caixas que se aplicam.

    • [] Change files in the "Data" folder as needed by the module
    • [x] Change UseCases file (“Presentation” folder) as needed by the module
    • [] Create UseCase for the module (folder “Domain/UseCase”)
    • [x] Change PresentationLogic protocol as needed by the module

    Evidências da feature:

    | iPhone SE | iPhone 12 Max | | ------ | ------ | | print | print |

    opened by abymathew0485 0
  • ✨ RestaurantList module to VIP

    ✨ RestaurantList module to VIP

    Implementing VIP Structure to RestaurantList module

    Work in progress

    Checklist:

    Coloque um x nas caixas que se aplicam.

    • [x] It doesn't add duplicated code
    • [x] It doesn't add commented code
    • [x] It doens't have WIP code
    opened by matheuslenke 0
Owner
Devpass
Onde as melhores pessoas desenvolvedoras decolam! 🚀
Devpass
Projeto utilizado nos Dev Sprints da Devpass.

Real Estate Challenge Vamos integrar com uma API e implementar funcionalidades e testes de um aplicativo de anúncios imobiliários. Iniciando os trabal

Devpass 2 Dec 21, 2022
Projeto utilizado nas Sprints de Arquitetura da Devpass.

MVVM Challenge - Delivery App ?? Neste desafio, aplicaremos conceitos da arquitetura MVVM para finalizar a implementação de um aplicativo. Desenvolver

Rodrigo Borges 12 Dec 21, 2022
Projeto utilizado nas Sprints de ViewCode da Devpass.

ViewCode Challenge - Delivery App ?? No Desafio ViewCode, temos apenas tarefas de implementação de interfaces via código (ViewCode). Nosso objetivo é

Devpass 4 Dec 1, 2022
Scrumdinger-ios - Built as a part of iOS app dev tutorials from app-dev-training

Scrumdinger This repository contains the code written during my course of taking

Ashwin Ramakrishnan 1 Jan 23, 2022
iOS Tech Challenge - Take Home Challenge

iOS Tech Challenge - Take Home Challenge Thank you for your interest in taking the iOS Tech Challenge. Preparation Please, compile the project in Xcod

null 0 Oct 18, 2021
Challenge-M2Y-TM4 - A challenge provided by Mobile2You, with the purpose of analyzing knowledge about UI, API consumption

Challenge-M2Y-TM4 Um desafio proporcionado pela Mobile2You, com proposito de ana

Felipe Brigagão de Almeida 0 Jan 31, 2022
TakeHomeChallenge - iOS Tech Challenge - Take Home Challenge

iOS Tech Challenge - Take Home Challenge Thank you for your interest in taking t

Michael 0 Feb 1, 2022
OrderManagementSystem - A real-time system that simulates the fulfillment of delivery orders for a kitchen

This project showcases the implementation of an order management system used for

Amer Hukić 27 Jul 24, 2022
This is an online food delivery app.

Foodiezz Online Food delivery App About This is an authenticated Food delivery App where the authenticated user can find dishes and place order easily

Muskan Rao 2 Jul 28, 2022
A sample iOS app built using the Clean Swift architecture

Main Purpose is to create a simple project for Clean-Swift This project wrote with using Clean-Swift and MVP Design Pattern

Eyup Cimen 8 Oct 24, 2022
Weather Forecast Assigment is an iOS application built to highlight MVP and Clean Architecture concepts

Weather Forecast Assigment - iOS - MVP + Clean Architecture Description Weather Forecast Assigment is an iOS application built to highlight MVP (Model

Khôi Việt 2 Oct 30, 2021
iOS NBA Challenge Based on Xcode 12.4, PR2S Project By: Oscar Pastás

iOS NBA Challenge Based on Xcode 12.4, PR2S Project By: Oscar Pastás iOS This test app consists of a list of users Considerations This test should be

null 0 Nov 26, 2021
Starter project for the iOS code challenge

iOS Base Project for Podium Take-Home Challenge Introduction We have provided two version of this base project: one using UIKit, one using SwiftUI. Th

Podium 1 Dec 29, 2021
Apple Developer Academy @ POSTECH, Afternoon Session 17 team's Mini Challenge Project

?? NatureUp Apple Developer Academy @ POSTECH, Afternoon Session 17 team's MC1 Project 사회가 발전하며 환경이 파괴되는 속도가 가속화되고 그 영향이 서서히 드러나며, 사람들의 환경에 대한 관심도는 점점

개발자아카데미_포스텍 5 Jul 22, 2022
A demo project using VIPER architecture and building user interface programmatically

ProductDiscovery A demo project that building a UIKit user interface programmatically. Because the UI is made of code very long so I have separated it

Vinh Vo 7 Oct 1, 2021
Screen transition with safe and clean code.

Presenter Screen transition with safe and clean code. With Presenter, you can… Assure that the ViewController's requirements are met, such as a ViewMo

Muukii 14 Aug 25, 2020
[Accepted] My WWDC21 Swift Student Challenge submission

My WWDC21 Swift Student Challenge submission I made a playground book that teaches you the basics of ARKit through interactive lessons. It covers posi

Zheng 25 Nov 12, 2022
WWDC2020 Swift Student Challenge - TheHackOfRayTracing playground book

wwdc2021 My wwdc2021 submission The HackOf RayTracing How to run Install swift playground from App Store on your Mac or iPad Double clik TheHackOfRayT

haoboxuxu 20 May 20, 2022
[Accepted] My WWDC2021 Swift Student Challenge submission chosen as one of the 350 winners!

Genetic Algorithms | WWDC21 This project was entirely built with SwiftUI. To direct download this Playground and run it on your Mac or IPad, click he

Fred Lacis 2 Dec 22, 2021