Este portfolio foi desenvolvido como trabalho final da disciplina de IHC. Além desse repositório, há 3 APIs que foram desenvolvidas para complementar o projeto, duas delas eu deixei como publicas no GitHub, e podem ser encontradas em:
-
ProjectsAPI - Uma API que busca projetos no GitHub, e adiciona ao retorno quais são os repositórios similares a cada um, com base nas tags e na linguagem predominante. A API foi desenvolvida para a página de projetos.
-
Live Checker API - Uma API que verifica se um canal do YouTube está ao-vivo ou não. A API retorna um JSON com o status do canal e a URL para a live, caso ao-vivo.
-
NodeJS - um ambiente REPL de Javascript, que permite utilizar a linguagem no lado do backend, bem como melhora a produtividade para o desenvolvimento front-end, por meio da linha de comando.
-
Typescript - Um "superset" de Javascript, que permite utilizar interfaces, herança, tipos, etc. o que permite ao desenvolvedor escrever código mais legível e organizado, bem como ao editor apontar os erros antes de executar o código.
-
JavaScript - linguagem de programação nativa dos browsers, utilizada para desenvolver o front-end e o back-end, através do NodeJS.
-
React - uma biblioteca que permite a criação de componentes reutilizáveis e reativos, para o desenvolvimento de interfaces através da união de HTML dentro do Javascript.
-
React Router DOM - biblioteca que permite a transição entre componentes React, simulando a navegação entre as páginas do site, e a tornando mais fluida.
-
Styled Components - uma biblioteca que permite criar estilos em React, que são aplicados aos componentes. Ela permite utilizar código javascript para criar estilos CSS dinâmicos e adaptáveis.
O projeto foi inicializado com o Create React App
, e como não executei o eject
, todos os scripts são os mesmos.
-
Adicionar vídeo de apresentação que apareça na primeira vez que o usuário acessa o site, e na página "sobre".
-
Adicionar formulário de contato.
-
Criar middleware para verificar contagem de acessos, bem como horário e localização, e salvar em um banco de dados.
-
Criar página de Blog
- Criar forma de adicionar conteúdo ao blog de maneira dinâmica.
- Implementar feed RSS no blog.