/github-issues-app

App feito em Swift nativo para demostrar conhecimento sobre processos de desenvolvimento.

Primary LanguageSwift

Build Status Twitter Follow badge

GitHub Issues Demo App.

Demo de aplicação de conhecimentos sobre arquitetura de desenvolvimento de apps para iOS.

Para ver o app funcinando, clique aqui.

O app consiste em duas telas que consome API do Github Issues:

Usabilidade

  • Tela inicial que lista as issues do repositório do Swift que contém:

    • Título.
    • Ícone.
    • Estado (aberto ou fecado).
  • Tela de detalhes, que contêm os seguintes elementos:

    • Título.
    • Texto de descrição.
    • Avatar do usuário.
    • Data de criação.
    • Um botão que abre o browser com o link issue do site do GitHub.

Outras features

  • Localização em pt-BR e en-US.
  • Autolayout.
  • Modo noturno.

Arquitetura

  • ✅ Escrito em Swift.
  • ✅ Testes Unitários (XCTest).
  • ✅ Clean Architecture (MVVM design partter).
  • ✅ Clean Architecture (Coordinator design partter).
  • ✅ Chamadas de REST com URLSession/Alamofire

Ferramentas

Serviços e ferramentas que aumentam consideravelmente a produtividade. Principalmente porque, após a configuração inicial, o processo é todo feito AUTOMATICAMENTE.

  • Cocoapods.
  • Bitrise (CI)
    • TODO: execução dos testes unitários.
  • Fastlane (CD) como:
    • Criação das codsigns e provisions.
    • Setup do app na App Store.
    • Geração de todas as telas localizadas para os devices necessários.
    • Ícone do app com badge do tipo e número da versão. Ex.: Alpha v1.3(34)
    • Envio automático do app para a App Store.
    • Distribuição para beta testers via Test Flight.
    • Envio para app para o simulador online: Appetize.oi.
    • Versionamento no Bitrise sincronizado com o GitHub.