|[Home](home)|[Sprints](sprints)|[Requisitos](requisitos)|[Arquitetura](arquitetura)|[Configuração](configuracao)|[Mockups](mockups)|[Banco de Dados](banco_dados)|[Instalação](instalacao)|[Gerência de Projeto](gp)|[Horários Disponiveis](horarios)|[Links úteis](useful-links)|[Anotações do time](anotacoes-do-time)|[Versionamento](versionamento)|[Comandos](comandos)|[Padronização](padronizacao) |---|---|---|---|---|---|---|---|---|---|---|---|---|---|---| # Página de Configuração do Projeto Este documento tem como objetivo apresentar brevemente as tecnologias que serão utilizadas durante o desenvolvimento do projeto, bem como os passos necessários para configuração do ambiente de desenvolvimento. **Tecnologias** O projeto consiste no uso do ambiente Java para desenvolvimento. Assim, para o backend vamos utilizar o framework Spring Boot, com server side rendering para garantia de bom SEO. A camada de persistência será criada utilizando PostgreSQL. O frontend deve ser leve, portanto HTML e CSS criados pelo time, utilizando a template engine Thymeleaf. Alguns recursos importantes: * [Documentação Spring Boot](https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/) * [Baeldung](https://www.baeldung.com/) * [DevDocs](https://devdocs.io/) * [Figma](https://www.figma.com/) * [Docker Docs](https://docs.docker.com/) **Java e editor de texto** De preferência, vamos utilizar máquinas que estejam rodando alguma distribuição Linux (Ubuntu, Mint, Manjaro …), mas se você preferir utilizar Windows ou MacOS, não tem problema. Alguns passos podem ser um pouco diferentes, mas nada complicado. O primeiro passo é verificar se o Java já está instalado e com a versão correta para o desenvolvimento (Java 11). Execute os seguintes comandos no terminal ou prompt de comando / Powershell na sua máquina para verificar se o JDK está instalado: java -version javac -version Caso ambos os comandos retornem um output similar ao seguinte, o Java está instalado corretamente na sua máquina. ![image](uploads/c61f79f67256ec261da045ce2812bcb3/image.png) Se você não tiver o JDK instalado, vamos ver os passos necessários. Se você estiver no Windows, os links a seguir explicam muito bem como instalar o JDK na sua máquina. Pode escolher qualquer uma das distribuições. * https://docs.aws.amazon.com/corretto/latest/corretto-11-ug/windows-7-install.html * https://docs.azul.com/zulu/zuludocs/ZuluUserGuide/InstallingZulu/InstallationWindowsUsingZuluMSIFile.htm * https://adoptopenjdk.net/ Caso você esteja em um ambiente UNIX (Mac / Linux), pode fazer a instalação utilizando uma ferramenta como o SDKMAN!, que ajuda no gerenciamento de diferentes versões do Java. Caso prefira instalar usando o gerenciar de pacotes (apt, pacman, dnf), os links a seguir documentam o processo. * https://docs.fedoraproject.org/en-US/quick-docs/installing-java/ * https://www.linuxbabe.com/ubuntu/install-oracle-java-8-openjdk-11-ubuntu-18-04-18-10 Após a instalação, é importante verificar novamente com os comandos java -version / javac -version. Se tiver algum problema durante o processo, pode pedir ajuda no Discord! Vamos ajudar! Como editor de texto / IDE, vamos usar o Visual Studio Code ou o IntelliJ. No caso do Visual Studio Code, é recomendado instalar as seguintes extensões para programação Java: * Java Extension Pack * Spring Boot Tools * thymeleaf Com isso, temos as dependências necessárias para uso da linguagem Java. Em seguida, vamos instalar o Docker, responsável por executar uma instância do banco de dados. **Docker** Caso seu computador esteja rodando Windows, verifique que está rodando o Windows 10 Pro. Caso não esteja, é necessário realizar o upgrade para a versão Pro. Primeiro, vamos verificar se a virtualização do processador está habilitada. Para isso, abra o gerenciador de tarefas e acesse a aba de "Desempenho". Depois, acesse a opção de CPU e verifique se a virtualização está "habilitada". Se não, é só seguir os passos desse [link](https://support.bluestacks.com/hc/pt-br/articles/115003174386-Como-posso-habilitar-a-virtualiza%C3%A7%C3%A3o-VT-no-meu-PC-#:~:text=Pressione%20a%20tecla%20F2%20na,e%20pressione%20a%20tecla%20Enter) Para instalar o Docker, acesse esse [link](https://docs.docker.com/get-docker/) e selecione a versão correspondente ao seu sistema operacional. É importante ler o passo a passo completo pois alguns detalhes são importantes para a instalação correta. No caso do Windows, ao ser solicitado para ativar as funcionalidades do Hyper-V, certifique-se de as mesmas estão habilitadas. Também, verifique se o seu sistema operacional está atualizado, independentemente de ser MacOS, Windows ou Linux. Quando terminar a instalação, abra uma janela do terminal / prompt de comando e execute o comando: `docker run hello-world` Note que se você estiver usando Linux, é preciso colocar o seu usuário no grupo do Docker para rodar os comandos sem sudo. Para isso, você pode executar o comando `sudo usermod -aG docker $USER` Por fim, se você estiver utilizando Linux, instale o [docker-compose](https://docs.docker.com/compose/install/). No caso do Windows e MacOS, ele já está instalado junto do Docker Desktop. **No IntelliJ** Após abrir o projeto, é preciso verificar se o IntelliJ está detectando o JDK correto. Para isso, aperte `ctrl + alt + shift + s` e verifique se o Project SDK está marcado como o JDK 11. Além disso, configure o Language Level também para a versão 11. **Acesso no pgAdmin** Para acessar o pgAdmin, vá para a url http://localhost:8000. O login é pgadmin@email.com e a senha é pgadminpass. Em seguida, clique em "Add New Server", e preencha com o nome de TOWNSQ. Na aba de "Connection", configure conforme a imagem. ![image](uploads/e755925889340728cd996928461e5b9e/image.png) A senha da base de dados é devdbuser. Caso não queira utilizar o pgAdmin, o IntelliJ fornece uma ferramente excelente para conexão e visualização de bancos de dados. Com o IntelliJ aberto em sua máquina e o projeto configurado, acesse a aba "databese" localizado na lateral direita. Clique em New representado pelo icone "+" conforme figura abaixo: ![image](uploads/e755925889340728cd996928461e5b0f/image.png) Na janela aberta preencha os campos coforme figura abaixo: ![image](uploads/e755925889340728cd996928461e5b1f/image.png) A senha da base de dados é devdbpass. E na aba "Schemas" marque a opção public (Current schema) da lista postgress, conforme figura abaixo: ![image](uploads/e755925889340728cd996928461e5b2f/image.png) **Importante** Os arquivos de configuração / docker-compose não estão sendo rastreados pelo git. Assim, é preciso fazer o download deles e colocar nas pastas do projeto. O docker-compose.yaml fica na raíz do projeto e os outros arquivos na pasta src/main/resources. [ignored-files.zip](uploads/9c3bbb87494af9800c382216ce42cea3/ignored-files.zip) Mais informações no [README](http://tools.ages.pucrs.br/compartilhamento/compartilhamento/blob/dev/README.md) do repositório do código fonte.