Site estático em Next.js (App Router): home com links, feed editorial, integração opcional com GitHub/YouTube, blog em Markdown, página Sobre e Novidades.
pnpm install| Comando | Descrição |
|---|---|
pnpm dev |
Servidor de desenvolvimento em http://localhost:3000 |
pnpm clean |
Remove a pasta .next (cache de build; use se aparecer erro ENOENT ou página sem CSS) |
pnpm dev:clean |
clean + dev em sequência |
pnpm build |
Build de produção |
pnpm start |
Sobe o build após pnpm build |
pnpm lint |
ESLint (Next.js) |
| O quê | Onde |
|---|---|
| Nome, bio, links, redes (LinkedIn, X, Threads), RSS do YouTube (futuro) | data/site.ts |
| Os 3 repositórios em destaque na home | Campo github.featuredRepoNames em data/site.ts (nomes exatos como no GitHub) |
| “Últimos posts” de X / Threads na home | content/redes-feed.json — manual (sem API pública estável; edite título, link do post e data) |
| Texto da página Sobre, “O que me move”, timeline | data/sobre.ts |
| Posts do blog | Arquivos .md em content/blog/ com frontmatter (title, date, excerpt, category, readingMinutes) |
| Novidades / changelog curto | content/novidades.json |
| Foto de perfil | Coloque a imagem em public/ (ex.: public/foto-perfil.jpg) e ajuste avatar em data/site.ts |
/— Home (hero, feed, projetos GitHub, grade de links)/blog— Listagem de posts/blog/[slug]— Post (slug = nome do arquivo sem.md)/sobre— Sobre mim/novidades— Lista de novidades
Com youtubeRssUrl vazio em data/site.ts, o feed usa só posts editoriais. Quando quiser vídeos automáticos, preencha com o RSS do canal; o código em lib/youtube.ts já está preparado.
Isso costuma ser cache do Next corrompido (servidor fechado no meio do build, troca de branch, etc.).
- Pare o
pnpm dev(Ctrl+C no terminal). - Na raiz do projeto:
pnpm clean
pnpm dev- No navegador, faça um hard refresh (Ctrl+F5) em
http://localhost:3000.
Se ainda falhar, rode pnpm install de novo e repita o passo 2.
- Rode
pnpm installna raiz do repositório. - No VS Code / Cursor: Ctrl+Shift+P → TypeScript: Select Workspace Version (use a versão em
node_modules/typescript). - Recarregue a janela se os avisos persistirem.
Arquivos como LICENSE podem ser marcados por extensões de ortografia ou Markdown; o projeto não depende deles para o build.
Veja LICENSE.
