Aplicativo para listar palavras em inglês, utilizando como base a API Free Dictionary API. A partir desta api é possível favoritar palavras, manter e acessar o histórico de palavras e outras funcionalidades
This is a challenge by Coodesh
-
Crie um banco de dados postgresql
-
Configure o arquivo application.properties alterando a url, username e password de acordo com sua configuração
``` #Spring Boot server configuration spring.datasource.url=jdbc:postgresql:https://127.0.0.1:5432/api-dictionary?autoReconnect=true spring.datasource.username=postgres spring.datasource.password=admin spring.datasource.driver-class-name= org.postgresql.Driver spring.jpa.hibernate.ddl-auto=update spring.jpa.properties.hibernate.temp.use_jdbc_metadata_defaults = false spring.jpa.database-platform=org.hibernate.dialect.PostgreSQL9Dialect server.servlet.context-path=/api-dictionary ```
-
Execute o projeto
Se você usa maven execute o comando mvn spring-boot:run
no terminal para inicializar o servidor de desenvolvimento.
Caso deseje gerar um arquivo jar execute o comando mvn clean package
e em seguida execute o comando java -jar target/api-dictionary-0.0.1-SNAPSHOT.jar
Acesse a url http:https://localhost:8080/
.
[POST] /auth/signup
[POST] /auth/signin
[GET] /entries/en
Retornar a lista de palavras do dicionário, com paginação e suporte a busca. O endpoint de paginação de uma busca hipotética deve retornar a seguinte estrutura:
[GET]/entries/en?search=fire&limit=4
[GET] /entries/en/:word
Retornar as informações da palavra especificada e registra o histórico de acesso.
[POST] /entries/en/:word/favorite
Salva a palavra na lista de favoritas (retorno opcional)
[DELETE] /entries/en/:word/unfavorite
Remover a palavra da lista de favoritas (retorno opcional)
[GET] /user/me
Retornar o perfil do usúario
[GET] /user/me/history
Retornar a lista de palavras visitadas
[GET] /user/me/favorites
Retornar a lista de palavras marcadas como favoritas