Skip to content

Repositório contendo a implementação do exame do processo seletivo da Bexs

Notifications You must be signed in to change notification settings

DanielHGimenez/forum

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Forum

Forum é um projeto que implementa um forum basico de perguntas e respostas

BackEnd

Atenção:

o backend roda na porta 8080 por padrão. Para mudar a porta da aplicação adicione server.port={PORTA} ao arquivo de configuração, substituindo {PORTA} pela porta desejada.

A aplicação contém Swagger e SwaggerUI, que é como se fosse um Postman. É possivel acessar a funcionalidade através do navegador usando a URL localhost:8080/swagger-ui.html. Esta funcionalidade só está disponivel quando o backend é executado com perfil de execução dev.

Para baixar a Collection do Postman acesse aqui

Requisitos

Para buildar o backend é necessario:

Para executar o projeto é necessário:

  • Ter instalado localmente ou em um server remoto o banco de dados MySql versão 5.x

Executando o projeto

Configuração

Tenha em mente que existem dois perfis de execução disponiveis:

  • dev: Perfil de execução voltado para ser usado no fluxo de desenvolvimento.
  • prod: Perfil de execução voltado para ser usado no ambiente de produção.

Para configurar o Schema no banco de dados execute o script do arquivo database.sql no banco de dados MySQL.

Para executar o projeto, deve-se primeiro definir as configurações de acesso ao banco de dados. Essa configuração podem ser feitas internamente ou externamente ao projeto. Os arquivos de configuração ficam dentro da pasta resources e são diferentes para cada perfil de execução escolhido.

internamente

Para realizar a configuração internamente deve-se preencher os dados faltantes do arquivo de configuração do perfil de execução escolhido.

externamente

Para realizar a configuração internamente deve-se preencher os dados faltantes do arquivo de configuração do perfil de execução escolhido e coloca-lo dentro de umas pasta config que deve ser criada na mesma pasta onde será executado o backend. Caso esteja executando o projeto e não um arquivo .jar, essa pasta ficará na raiz do projeto.

Execução

O backend pode ser executado através do projeto, usando do o plugin do Spring Boot (não indicado para ambientes de produção) ou através de um arquivo .jar gerado pelo build do Apache Maven.

Para executar com o plugin do Spring Boot, basta executar o comando a seguir na pasta backend do projeto, substituindo o {PROFILE} pelo perfil de execução escolhido:

mvn spring-boot:run -Drun.profiles={PROFILE}

Para executar através de um arquivo .jar, devemos gerar o arquivo executando o comando a seguir:

mvn clean install

Um arquivo .jar será gerado dentro da pasta target na raiz da pasta backend. Para executar a aplicação execute o comando a seguir, substituindo {PROFILE} pelo perfil de execução escolhido, e substituindo {ARQUIVO_JAR} pelo caminho até o arquivo .jar:

java -Dspring.profiles.active={PROFILE} -jar {ARQUIVO_JAR}

FrontEnd

Requisitos

Para buildar o backend é necessario:

  • Ter instalado o Node.

Para executar o projeto é necessário:

  • Caso queira expor em formato de produção, é necessario ter um servidor Http. Por exemplo: Apache.

Executando o projeto

Configuração

Para executar o projeto, deve-se primeiro definir as configurações de acesso a API definidos no arquivo ApiConfig.json.

Execução

O frontend pode ser executado através do projeto, usando o Node (não indicado para ambientes de produção) ou através de um server http que armazena os arquivos estáticos gerados pelo build.

Para executar o projeto através do Node, basta executar os comandos a seguir na pasta frontend:

npm i
npm start

Para executar o projeto através de um server http, execute os comandos a seguir:

npm i
npm run build

Será gerada uma pasta chamada build dentro da pasta frontend. Mova todos os arquivos contidos dentro dessa pasta para a pasta que expõe os arquivos estáticos do servidor http instalado.

About

Repositório contendo a implementação do exame do processo seletivo da Bexs

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published