vgerace / imersaojavastickers

O projeto Imersão Java - Stickers - Tem como objetivo ajudar o usuário a criar Stickers para compartilhamento. Dentro do sticker pode ser impresso frases que desejar e se for escolhido o consumo de uma API, pode também ser personalizado com base no Ranking, como exemplo, sobre filmes, da IMDB.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

image

Projeto Imersão Java ☕


Status

A aplicação alura-stickers tem como principal funcionalidade gerar stickers que podem, por exemplo, ser compartilhados no whatsapp. Enquanto o projeto Spring - linguagens.api - a principal funcionalidade é o CRUD (Create, Read, Update and Delete) das principais linguagens de programação escolhidas. Meu objetivo em participar do projeto foi a revisão de conceitos e recursos do mundo Java, estudar e ampliar meus conhecimentos! 😄

🗒️ Índice

✏️ Descrição do Projeto

A cada aula foi desenvolvido uma parte do sistema que envolveu: conceitos de Orientação a Objetos, Java, API REST, Bibliotecas (como exemplo: Java Awt, Java Io, Java Util), Ecossistema Spring e Cloud.

🎯 Como executar

Na linha de comando execute:

# Clone o repositório
$ git clone https://github.com/vgerace/imersaojavastickers

[Spring]

# Entre no diretório
$ cd imersaojavastickers/target

# Execute o comando abaixo para startar o app
$ java -jar linguagens.api-0.0.1-SNAPSHOT.jar

[Java]

# Entre no diretório
$ cd alura-stickers/src

# Escolha na classe App a API que prefira (disponíveis da NASA e IMDB)
# Ajuste a key com as variáveis de ambiente de acordo com sua IDE/OS, no exemplo: (nasaApiKey, imdbApiKey...)
$ Execute a classe APP

Aula 1 - Desafios

  • Consumir o endpoint de filmes mais populares da API do IMDB. Além de também, o endpoint que retorna as melhores séries e o que retorna as séries mais populares.
  • Usar sua criatividade para deixar a saída dos dados mais bonitinha: usar emojis com código UTF-8, mostrar a nota do filme como estrelinhas, decorar o terminal com cores, negrito e itálico usando códigos ANSI, e mais!
  • Colocar a chave da API do IMDB em algum lugar fora do código como um arquivo de configuração (p. ex, um arquivo .properties) ou uma variável de ambiente..

Desafio01_2

[Aula 2] - Desafios

  • Criar diretório de saída das imagens, se ainda não existir.
  • Centralizar o texto na figurinha.
  • Colocar outra fonte como a Comic Sans ou a Impact, a fonte usada em memes.
  • Colocar contorno (outline) no texto da imagem.
  • Colocar outra fonte como a Comic Sans ou a Impact, a fonte usada em memes.
  • Colocar uma imagem de você que está fazendo esse curso sorrindo, fazendo joinha e fazer com que o texto da figurinha seja personalizado de acordo com as classificações do IMDB.!

image

[Aula 3] - Desafios

  • Transformar a classe que representa os conteúdos em um Record, disponível a partir do Java 16.
  • Criar as suas próprias exceções e usá-las na classe que implementa o cliente HTTP.
  • Usar recursos do Java 8 e posterior, como Streams e Lambdas, para mapear uma lista em uma outra.
  • Criar uma Enum que une, como configurações, a URL da API e o extrator utilizado.

[Aula 4] - Destaque

  • CRUD
  • Criação de collection utilizando Mongo Db Cloud

image

image

image

[Aula 5] - Destaque

  • Deploy
  • Adicionalmente, foi criado dockerfile e imagem docker
  • Adicionalmente, foi implementado o Swagger para documentação da API

API disponível em: https://imersaojavastickers-production.up.railway.app/linguagens

image

Imagem Docker disponível em: https://hub.docker.com/r/geracevitor/linguagensapi/

Swagger Ui

image

⚙️ Tecnologias

👏🏾 Agradecimento

Quero registrar meu agradecimento a todos envolvidos da equipe Alura e sua comunidade, que impulsionaram e colaboraram para a realização desse projeto. Em especial também ao meu colega e amigo @durvalprintes, por sempre se dispor a colaborar em dúvidas, compartilhar conhecimento e incentivar a nos tornarmos profissionais/devs melhores!

About

O projeto Imersão Java - Stickers - Tem como objetivo ajudar o usuário a criar Stickers para compartilhamento. Dentro do sticker pode ser impresso frases que desejar e se for escolhido o consumo de uma API, pode também ser personalizado com base no Ranking, como exemplo, sobre filmes, da IMDB.


Languages

Language:Java 100.0%