Desafio 01-2025 para seleção de estágio na Jambu Tecnologia
Precisamos que os candidatos e candidatas desenvolvam um Projeto de integração simples com a The Start Wars API que é uma API pública para consulta de personagens/filmes/planetas/naves da Saga Star Wars...
O desafio é implementar obrigatóriamente na linguagem Ruby on Rails. Opcionalmente os elementos do frontend "podem" conter componentes em Javascript, Bootstrap, Angular, Vue.js, React ou Svelte, contudo, consideramos que, mesmo para iniciantes, é melhor implementar priorizando o uso do framework nativo. Adminimos que o projeto pode conter interfaces alternativas como as conversacionais, utiizando whatzapp, telegram, webchat ou cli command com interface a caracteres.
Funcionalidades mínimas:
Funcionalidade 1: usuário deve poder fazer uma busca por tipos (personagens/planetas/naves:people/planets/starships), exibir os resultados numa interface em formato de lista.
Funcionalidade 2: usuário deve poder construir uma lista de favoritos, podendo marcar um (ou mais) itens (personagens/planetas/naves:people/planets/starships) como favorito, fazer o armazenamento utilizando qualquer estratégia persistência.
Funcionalidade 3: usuário deve poder consultar a sua lista de favoritos, por exemplo, tela para listar todas naves que foram marcadas como favoritas.
Deve utilizar:
- Bootstrap 4 ou 5
- Plataforma Linux, pode ser seu desktop (desde que seja Linux), num serviço de nuvem como google cloud, AWS, Azure, Heroku, fly.io, etc
- Algum Framework CSS (Bulma-https://bulma.io/, Materialize, etc.)
Pazos e instituições parceiras:
As inscrições para o processo seletivo podem ser obtidas com o Coordenador do seu curso ou professor parceiro da Jambu Tecnologia. A data para entrega será informada por email e definida em conjunto com as instituições de ensino parceiras.
Este processo seletivo será realizado exclusivamente em outubro de 2025.
Dicas e Recomendações:
Recomendamos que os resultados das pesquisas dos objetos que possam ser listados diretamente, por exemplo (people:pessoas ou planets:planetas, films:filmes e starships:naves). Não é necessário se preocupar com valores complexos nos atributos desses objetos (por exemplo, filmes que um personagem participou). Deve-se mostrar somente o essencial, por exemplo o nome de um filme, pois esse atributo sempre está disponivel.Informações sobre a documentacao da API (inclusive métodos de acesso com RoR)
https://swapi.dev/documentation
Específicamente para este desafio, recomendamos não programar no sistema operacional Windows, nem com WSL !
É preferivel que você utilize o Ubuntu Linux LTS como sistema operacional para desenvolvimento, mas, se estiver usando outro sistema operacional, pode-se experimentar uma instância virtualizado com o Virtual Box: Virtualbox
Guias para iniciantes em Ruby on Rails:
https://guides.rubyonrails.org/
https://www.rubyguides.com/
https://www.ruby-lang.org/pt/documentation/
https://guiarails.com.br/getting_started.html
https://www.theodinproject.com/paths/full-stack-ruby-on-rails/courses/ruby-on-rails
https://rubyonrailsbrasil.com.br/
Convenções em Ruby https://guru-sp.github.io/tutorial_ruby/nomes-em-ruby.html
Dicas de extensões para Ruby no VScode https://onebitcode.com/vs-code-rails/
Grupo do de Rails no Telegram: https://t.me/rubybrasil
Dicas do GitFlow: Gitflow tutorial
Dicas do HTTPParty: Testando api com httparty, Apresentando o famoso httparty