01. Minha história
Meu nome é Harison Rios, tenho 20 anos e sou de São Paulo. Entrei nesse mundo da tecnologia na ETEC, onde fiz o técnico em Desenvolvimento de Sistemas — e foi ali que eu travei. Me apaixonei de vez e não parei mais.
Hoje curso Análise e Desenvolvimento de Sistemas na SPTech (São Paulo Tech School) e estou estagiando como Desenvolvedor na Stefanini Brasil — uma das maiores consultorias de tecnologia da América Latina. Cada sprint é um aprendizado novo.
No tempo livre desenvolvo projetos por conta própria, jogo, e fico imerso na cena do rap e trap. Sempre tentando misturar tecnologia com criatividade — acho que as melhores ideias nascem nessa interseção.
02. Por que fiz esse portfólio
Queria algo além de uma lista de projetos. Um espaço que mostrasse quem eu sou de verdade — o que estou ouvindo, o clima em SP, as techs do dia a dia. Um reflexo atual de mim.
Mas não nasceu assim. Comecei com algo bem mais simples — um portfólio básico sem muita integração. Conforme fui aprendendo na faculdade e nas experiências de trabalho, fui me desafiando a ir além. Cada versão nova reflete um nível novo de entendimento. Você pode ver como era a versão anterior aqui:
HarisonRios/hari — versão anteriorA versão atual construí do zero com Next.js e Tailwind CSS, integrando APIs reais do GitHub, Last.fm e Open-Meteo. Nada de template — cada componente foi pensado e escrito à mão.
03. Como funciona o "Now Playing"
Antes eu usava o Lanyard — uma API de presença do Discord que detecta o que você está ouvindo quando o Spotify está conectado. Funcionava, mas dependia do Discord aberto. Queria evoluir: mostrar a música mesmo sem o Discord rodando.
A solução foi o Last.fm. Conectei minha conta do Spotify nele e agora ele registra cada música que ouço — isso se chama scrobbling. A API do Last.fm é pública, só precisa de uma API key gratuita. Sem OAuth, sem token do usuário, sem complexidade.
As chamadas acontecem em rotas de servidor do Next.js — a API key nunca chega ao browser. Os Top Álbuns vêm do user.gettopalbums?period=1month e atualizam a cada 5 minutos.
04. Resumo técnico
- ✦Next.js 14 (App Router) + TypeScript
- ✦Tailwind CSS + componentes próprios
- ✦Last.fm API — Now Playing & Top Albums
- ✦GitHub GraphQL API — Pinned Repos
- ✦Open-Meteo API — clima em tempo real
- ✦EmailJS — formulário de contato
- ✦WebGL via OGL — background animado