Giter Club home page Giter Club logo

fga-eps-mds / 2018.1_nexte Goto Github PK

View Code? Open in Web Editor NEW
9.0 16.0 4.0 41.37 MB

Aplicativo que integra tenistas dentro de clubes, por meio de partidas e desafios, juntando estatísticas e gamificação em forma de ranking. Tem como objetivo gamificar comunidades locais de tênis.

Home Page: https://fga-gpp-mds.github.io/2018.1_Nexte/

License: Other

Kotlin 89.15% Shell 0.04% Ruby 0.17% Java 10.43% Dockerfile 0.21%
android-native kotlin-android tennis-ranking tennis-players

2018.1_nexte's Introduction

Nexte

Icon-_App-1024x1024.png

pipeline status licence MIT

O Nexte tem como objetivo promover a integração entre tenistas a partir da realização de desafios entre os membros desta comunidade. Não obstante, Nexte é desenvolvido com tecnologias modernas como: Docker, Kotlin, Node, e muitas outras.

For english support, read out README provided in english.

Primeiros Passos

É nessário realizar alguns passos antes de começar.

Prerequisitos e Instalação

Neste momento, é necessário instalar o Android Studio com a SDK 22. Se ainda não fez isso, por favor siga os passos disponibilizados na Documentação Oficial do Android.

CI e Docker

O processo de integração continua utilizada no Nexte é provida pelo GitlabCI.

Assim, o CI pode ser dividido em 4 etapas:

  1. Análise Estática: Fase que o CI a partir do docker executa a análise estática do código. Utiliza-se do Docker para realizar essa tarefa

Caso deseje executar apenas a análise estática:

  docker run -v $(pwd)/project:/application -v $(pwd)/docker/local.properties:/application/local.properties baldissera/android-container:2.1 /bin/bash "/static_analysis.sh"
  1. Testes: Fase que o CI executa os testes unitários. Utiliza-se do Docker para realizar essa tarefa.

Caso deseje executar apenas os testes:

  docker run -v $(pwd)/project:/application -v $(pwd)/docker/local.properties:/application/local.properties baldissera/android-container:2.1 /bin/bash "/test.sh"
  1. Build: Fase em que é criado uma build, .apk. Utiliza-se do Docker para realizar essa tarefa.

Caso deseje executar uma build:

  docker run -v $(pwd)/project:/application -v $(pwd)/docker/local.properties:/application/local.properties baldissera/android-container:2.1 /bin/bash "/build.sh"
  1. Deploy: Cria uma build pronta para ser disponibilizada como beta na Google Play. Esta interação do CI apenas ocorre nas branches master e dev. GitlabCI faz uso do Fastlane.

Para mais informações sobre CI e seu funcionamento acesse nosso CONTRIBUTING

  1. Para integração com o servidor, basta rodá-lo utilizando o docker para o mesmo ficar disponível em seu ambiente de desenvolvimento. O Servidor ficará disponível na porta 3000.

O comando para isso é:

  docker run -d -p 3000:3000 baldissera/nexteserver:latest

OU

  docker-compose up -d

Observações

  1. Os pull request só poderão ser aceitos caso o pipeline não tenha falhado, portanto deve-se usar os comandos do docker para validar o código, antes de gerar um Pull Request;
  2. Todos os comandos do docker deverão ser executados na raiz do programa

Deployment

Versões oficiais de deployment são disponibilizadas pelos mantedores do respositório. Mas, você pode entrar em contato com eles por issues e solicitar uma nova versão de deployment.

Ressalta-se que a partir do fastlane integrado com nosso CI, quando uma tag do GitHub é criada com a branch dev, é compilada uma nova versão de deploy pronta para ser disponibilizada como beta no Google Play, fazendo o deploy automatizado.

Construído com

Contribuindo

Por favor, leia CONTRIBUTING para detalhes do nosso código de conduta e submição de pull request.

Versões

Neste momento, ainda não há nenhuma versão de deployment para Android.

Documentação

Para saber mais sobre o projeto acesse a documentação do projeto

Autores

  • Guilherme Baldissera - Trabalho inicial - Github
  • Miguel Pimentel - Trabalho inicial - Github

Veja também a lista de contribuidores que participaram deste projeto.

Licença

Este projeto está sob a licença MIT - veja o arquivo LICENSE para mais detalhes.

Conhecimentos

  • Inspiracional
  • Utiliza as tecnologias mais recentes em desenvolvimento Android
  • Alto suporte dos mantedores

Extras

O Nexte também possui outro repositório relacionado ao servidor de imagem, este foi desenvolvido em Go e realiza o armazenamento de imagens no serviço de Cloud da Google. Estes estão disponíveis no Gitlab e Github e seguem as mesmas políticas desse projeto:

2018.1_nexte's People

Contributors

aleronupe avatar gabriel-albino-2 avatar gabrielalbino avatar geovannioj avatar guibaldissera avatar helenagoulart avatar larissa-sales avatar lorranyh avatar luis-gustavo avatar mbslet avatar miguelpimentel avatar victorcmoura avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

2018.1_nexte's Issues

Eu, como desenvolvedor, quero implementar a cena arquitetural de exibir perfil para exibir as informações dos usuários do aplicativo

Descrição

Criar a arquitetura da tela de mostrar perfil

Critérios de Aceitação

  • Pacote individual da cena criada;
  • Interactor precisa ser chamada na MainView;
  • Precisa ser implementado DisplayLogic para imprimir uma mensagem no console;
  • 3 interfaces (InteractorBusinessLogic (Interactor), PresentationLogic (Presenter) e DisplayLogic (View));
  • 4 classes (Interactor, Model, Worker e Presenter).

Eu, como desenvolvedor, quero implementar a cena arquitetural do ranking para exibir a classificação dos usuários

Descrição

Criar a arquitetura da tela de ranking

Critérios de Aceitação

  • Pacote individual da cena criada;
  • Interactor precisa ser chamada na MainView;
  • Precisa ser implementado DisplayLogic para imprimir uma mensagem no console;
  • 3 interfaces (InteractorBusinessLogic (Interactor), PresentationLogic (Presenter) e DisplayLogic (View));
  • 4 classes (Interactor, Model, Worker e Presenter).

Encontro #02 com membro do time

Descrição

Assuntos em nível organizacional e treinamentos foram abordados

Ata de Assuntos

  • Apresentação dos membros
  • Dôjos (Git e Agile)
  • Apresentação projeto - NEXTE

Membros Presentes

  • EP: Todos do Time
  • MDS: Todos do time

Horário: 14 e 15 às 17 e 30
Data: 10/03/2018

Eu, como desenvolvedor, quero implementar a cena arquitetural de editar perfil para que a edição de perfil seja possível no aplicativo

Descrição

Criar a arquitetura da tela de editar perfil

Critérios de Aceitação

  • Pacote individual da cena criada;
  • Interactor precisa ser chamada na MainView;
  • Precisa ser implementado DisplayLogic para imprimir uma mensagem no console;
  • 3 interfaces (InteractorBusinessLogic (Interactor), PresentationLogic (Presenter) e DisplayLogic (View));
  • 4 classes (Interactor, Model, Worker e Presenter).

Configurar extensões com o Slack

Descrição

Configurar plugins de ferramentas tais como Github e Slack ao Slack

Responsável

Miguel Pimentel

Horário: 17 e 30
Data: 10/03/2018

Eu, como gerente do projeto gostaria de fazer o Treinamento sobre Kotlin com a arquitetura a ser utilizada no projeto, para que a equipe de desenvolvimento seja treinada

Descrição

Critérios de Aceitação

  • É preciso criar um documento contendo a arquitetura da cena que será criada
  • É preciso ser implementada junto com a equipe de MDS alguma feature que será utilizada no app.
  • O código fonte deverá ser disponibilizado para o time de desenvolvedores
  • O treinamento deverá conter uma noção básica de Kotlin

Eu, como DevOps, quero configurar a Integração Contínua ao repositório

Descrição

Essa issue destina-se a realizar uma configuração para integração contínua e geração de build do aplicativo automatizado ao ser enviado uma atualização aos repositórios do projeto com uma validação básica para build success ou fail invalidando o commit.
Futuramente deverá ser integrado validações segundo as métricas a serem definidas no plano de qualidade.

Critérios de Aceitação

  • Escolher qual plataforma utilizar para integrar ao github (Circle CI, Travis CI...)
  • Criar .yml para execução na plataforma escolhida, integrando o Docker do projeto.
  • Configurar o repositório para executar os pipelines pelo .yml.

Eu, como desenvolvedor, quero implementar a cena arquitetural do feed para exibir as partidas recentes no aplicativo

Descrição

Criar a arquitetura da tela de feed

Critérios de Aceitação

  • Pacote individual da cena criada;
  • Interactor precisa ser chamada na MainView;
  • Precisa ser implementado DisplayLogic para imprimir uma mensagem no console;
  • 3 interfaces (InteractorBusinessLogic (Interactor), PresentationLogic (Presenter) e DisplayLogic (View));
  • 4 classes (Interactor, Model, Worker e Presenter).

Eu, como desenvolvedor, quero implementar a cena arquitetural da lista de comentários para exibir os comentários da partida do feed

Descrição

Criar a arquitetura da tela da lista de comentários

Critérios de Aceitação

  • Pacote individual da cena criada;
  • Interactor precisa ser chamada na MainView;
  • Precisa ser implementado DisplayLogic para imprimir uma mensagem no console;
  • 3 interfaces (InteractorBusinessLogic (Interactor), PresentationLogic (Presenter) e DisplayLogic (View));
  • 4 classes (Interactor, Model, Worker e Presenter).

Eu, como desenvolvedor, quero implementar a cena arquitetural de login para efetuar a autenticação no aplicativo

Descrição

Criar a arquitetura da tela de login

Critérios de Aceitação

  • Pacote individual da cena criada;
  • Interactor precisa ser chamada na MainView;
  • Precisa ser implementado DisplayLogic para imprimir uma mensagem no console;
  • 3 interfaces (InteractorBusinessLogic (Interactor), PresentationLogic (Presenter) e DisplayLogic (View));
  • 4 classes (Interactor, Model, Worker e Presenter).

Treinamento de Arquitetura

Descrição

Ata de Assuntos

Intrutor

Membros Presentes

  • Gabriel Albino
  • Letícia Meneses
  • Alexandre Miguel
  • Helena Goulart
  • Larissa Sales
  • Lorrany Freire

Horário: A partir de 14h
**Data: **

Treinamento de Docker

Descrição
Assuntos relacionados a tecnologia

Ata de Assuntos

  • Explicação sobre o funcionamento da tecnologia docker
  • Demonstração de um projeto que utiliza docker
  • Discussão sobre como a tecnologia será utilizada no projeto

Instrutor

  • Guilherme Baldissera

Membros Presentes

  • Luis Gustavo
  • Miguel Pimentel
  • Geovanni Oliveira

Horário: 18h às 19h30
Data: 09/03/2018

Encontro #01 com membros do time

Descrição

Assuntos pertinentes a organização do time foram abordados.

Ata de Assuntos

  • Horário e disponibilidade de encontros presenciais
  • Agendamento de Dojos
  • Discursão sobre tecnologias a seres utilizadas

Membros Presentes

  • EP: Miguel, Geovanni, Luís e Guilherme
  • MDS: Helena e Letícia

Horário: 11 e 15 às 11 e 35
Data: 08/03/2018

Treinamento de Gitflow

Descrição

Ata de Assuntos

Intrutor

  • Luis Gustavo

Membros Presentes

  • Gabriel Albino
  • Letícia Meneses
  • Alexandre Miguel
  • Helena Goulart
  • Larissa Sales
  • Lorrany Freire

Horário: A partir de 14h
Data: 17/03/2018

Impossibilidade de integração com Slack

@RochaCarla
Não estamos conseguindo integrar o repositório com aplicativos ou plugins externos como o ZenHubApp e com o Slack. Com Webhooks é possível, porém com as integrações oficiais não.

A imagem em anexo mostra que ali na aba lateral não contém o projeto.
Existe algum tipo de configuração que possa liberar isso? Algum tipo de privilégio que não temos devido ao repositório ser parte de uma organização?

Captura de Tela 2018-03-14 às 18.02.56.png

Eu, como desenvolvedor, quero implementar a cena arquitetural do desafio para efetuar a marcação de partidas

Descrição

Criar a arquitetura da tela de criar desafio

Critérios de Aceitação

  • Pacote individual da cena criada;
  • Interactor precisa ser chamada na MainView;
  • Precisa ser implementado DisplayLogic para imprimir uma mensagem no console;
  • 3 interfaces (InteractorBusinessLogic (Interactor), PresentationLogic (Presenter) e DisplayLogic (View));
  • 4 classes (Interactor, Model, Worker e Presenter).

Eu, como desenvolvedor, desejo Elaborar a folha de estilo para padronizar o código

Descrição

Padronizar a apresentação visual de determinados trechos de código. Ex: padronizar métodos, comentários, espaçamento, nomes de variáveis, etc..

Critérios de Aceitação

  • Devem ser feitos exemplo de certo e errado para cada caso
  • Nomeação
  • Formatação
  • Comentários
  • Teste
  • Imports
  • Estilo da Model
  • Estruturas de decisão
  • Identação
  • Linguagem

Treinamento de Arquitetura

Descrição
Descrição sobre clean architecture que será utilizada no projeto

Ata de Assuntos

  • Revisão de MVC
  • Explicação sobre clean architecture
  • Exemplo em Kotlin

Intrutor

  • Miguel Pimentel

Membros Presentes

  • Gabriel Albino
  • Letícia Meneses
  • Alexandre Miguel
  • Helena Goulart
  • Larissa Sales
  • Lorrany Freire

Horário: A partir de 14h
Data: 17/03/2018

Treinamento de Agile

Descrição
Treinamento sobre o funcionamento tecnologia

Ata de Assuntos

  • SCRUM
  • Requisitos no Agile
  • KANBAN
  • XP

Instrutor

  • Miguel Pimentel

Membros Presentes

Todos os membros

Horário: A partir de 14h
Data: 10/03/2018

Elaborar templates

Descrição

Elaborar templates para descreverem como devem ser escritos as issues, commits, pull requests

Critérios de Aceitação

  • Template de issue
  • Template de commit
  • Template de pull request

Treinamento de Git

Descrição
Treinamento sobre o funcionamento tecnologia

Ata de Assuntos

  • Por que utilizar git
  • Instalação
  • Configurações
  • Comandos
  • Boas práticas
  • Demonstração com a equipe de MDS

Instrutor

  • Luis Gustavo

Membros Presentes

  • Gabriel Albino
  • Letícia Meneses
  • Alexandre Miguel
  • Helena Goulart
  • Larissa Sales
  • Lorrany Freire

Horário: A partir de 14h
Data: 10/03/2018

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.