Skip to content

About

Monte seu site pessoal a partir do Currículo Lattes e publique no GitHub Pages

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

43 Commits

Folders and files

Repository files navigation

PageLattes

Seu Currículo Lattes vira um site pessoal, publicado de graça no GitHub.

luizpf42.github.io/PageLattes

O GitHub, o site onde programadores guardam código, também hospeda páginas pessoais de graça: quem tem uma conta lá pode ter um site no endereço seu-usuario.github.io. O PageLattes transforma o seu Currículo Lattes em um arquivo único, pronto para ser colocado nesse lugar, e te orienta passo a passo até o site estar no ar.

Não precisa saber programar, não precisa instalar nada e não custa nada. O site fica assim, no computador e no celular:

Site gerado pelo PageLattes, visto no computador: foto, apresentação, interesses, formação e destaques O mesmo currículo no celular, com outra cor e outra fonte

O mesmo currículo, com outras escolhas de fundo, cor, fonte e estrutura:

Visual centralizado e datilografado, com foto retangular Visual com menu no topo, fundo cinza e cor azul Visual escuro, com fonte monoespaçada nos títulos

Currículo artificial, gerado em homenagem a César Lattes (1924–2005), o físico que dá nome à Plataforma.

O que você precisa

  • Seu Currículo Lattes, aberto no navegador. Quem não tem Lattes pode preencher tudo à mão.
  • Uma conta no GitHub. É gratuita e leva dois minutos para criar. Você só precisa dela na última etapa.
  • Uns vinte minutos. Tudo o que você faz fica salvo no seu navegador, então dá para parar e continuar depois.

Como funciona

Abra luizpf42.github.io/PageLattes e siga as cinco etapas.

1. Aparência

Escolha o fundo, a cor de destaque, a fonte, a estrutura da página, o formato da foto e o idioma do site (português, inglês ou os dois). A prévia ao lado muda na hora, e tudo pode ser trocado depois.

Etapa Aparência: opções de fundo, cor, estrutura e foto à esquerda; prévia do site à direita

2. Lattes

Abra seu currículo na busca do Lattes, salve a página com Ctrl + S e arraste o arquivo salvo para o construtor. O currículo é lido ali mesmo, no seu navegador.

Etapa Lattes: instruções para salvar a página do currículo e a área para arrastar o arquivo

3. Conteúdo

O resumo do Lattes vira o texto de apresentação, que você reescreve como quiser. Depois, você escolhe o que entra no site, ajusta os interesses e marca com uma estrela o que merece aparecer em destaque na página inicial.

Etapa Conteúdo: nome, foto, texto de apresentação e interesses, já preenchidos a partir do Lattes

4. Revisão

Veja o site como ele vai ficar no celular, no tablet e no computador, e faça os ajustes finais de cor, fonte, foto e organização.

Etapa Revisão: barra de ajustes em cima e o site pronto embaixo

5. Publicar

Baixe o arquivo index.html e siga o passo a passo na tela: criar a conta, criar o repositório com o nome certo e enviar o arquivo. Em um ou dois minutos o site está no ar.

Etapa Publicar: o passo a passo para colocar o site no GitHub

Por que usar o Lattes?

O Lattes é uma fonte incomumente boa de registros. Quase toda pessoa que pesquisa no Brasil mantém o seu, ele é a referência para agências de fomento, concursos e programas de pós-graduação, e por isso costuma ser preenchido com cuidado. É um ativo da pesquisa e da academia brasileiras.

O que ele não faz é apresentar. A página pública do Lattes é feita para registrar: uma lista longa, igual para todo mundo, sem escolher o que vem primeiro nem como fica. O PageLattes acrescenta só uma camada de visibilidade e de flexibilidade na apresentação: você decide o que mostrar, o que destacar e com que cara.

Por isso ele não compete com o Lattes nem o substitui. As produções continuam sendo cadastradas só no Lattes. No site não se lança artigo, livro nem orientação à mão: se a lista fosse mantida em dois lugares, cedo ou tarde o site e o currículo iriam divergir. O que fica livre é o que o Lattes não cobre bem: a apresentação em primeira pessoa, os interesses, os links e os destaques livres, cartões para um software, um site, um projeto ou um prêmio que não têm registro no currículo.

E para atualizar depois?

O site é um arquivo só, e esse arquivo guarda as suas escolhas: cores, textos, o que entrou e o que ficou de fora. Por isso o PageLattes consegue reler o site que ele mesmo gerou.

  • Mudou algo no Lattes? Salve a página do currículo de novo e importe na etapa Lattes. As produções novas entram; o que você já tinha escolhido, escrito e destacado continua como estava.
  • Quer trocar a cor, mexer no texto ou tirar um item? No mesmo navegador, está tudo salvo: abra o construtor, ajuste e baixe o index.html de novo. Em outro computador, comece pela etapa 0 Atualizar e traga o index.html que está publicado no seu GitHub.
  • Para colocar no ar, envie o arquivo novo pela mesma página do GitHub. Como o nome é o mesmo, ele entra no lugar do antigo.

Etapa 0, Atualizar: traga o index.html publicado e continue de onde parou

Currículo em inglês

O site pode sair em português, em inglês ou nos dois, com um botão PT/EN para quem visita. A escolha fica na etapa Aparência e pode ser mudada depois, na Revisão.

Etapa Aparência: a opção Idioma do site, com o aviso de que não há tradução automática, e a prévia já em inglês, com o botão PT/EN

O PageLattes não traduz automaticamente. Tradutor nenhum acerta nomes de curso, de instituição e de projeto com a segurança que um currículo pede, e um site meio traduzido é pior que um site em português. Então ele faz só o que dá para fazer com certeza, e deixa o resto com você:

  • O que é fixo sai em inglês por regra: os títulos das seções e das abas, os tipos de produção, o grau da formação ("Doutorado em Física" vira "PhD in Physics"), o curso das disciplinas ministradas, os idiomas e a proficiência ("Inglês: Lê Bem" vira "English: Reads well"), os países e os nomes de instituição que ele conhece ("Universidade de São Paulo" vira "University of São Paulo"). Quando não conhece todas as palavras, deixa em português, inteiro.
  • O que é seu, você escreve. Na etapa Conteúdo aparecem campos "Em inglês" ao lado da apresentação, da linha abaixo do nome, dos interesses e da frase de cada destaque. Em cada item do currículo, o lápis abre também os campos em inglês e mostra o que sairia sem eles.
  • O que ficar vazio aparece em português. As produções e as orientações não mudam de idioma: são registros, e ficam como foram publicados.

Etapa Conteúdo com os campos "Em inglês" ao lado dos campos em português

O lápis de um item da formação: o texto em português, os campos em inglês e a dica do que o site mostraria sem eles

O mesmo site em inglês, com o botão PT/EN no canto

Ensino

As disciplinas que você ministrou ganham uma aba própria, Ensino (Teaching, no site em inglês). Elas vêm do próprio Lattes: das "Atividades" de cada vínculo da Atuação Profissional, onde o currículo registra o período, a instituição, o curso, o nível e as disciplinas ("Ensino, Direito, Nível: Graduação"). Cada atividade vira um item, com as disciplinas no título, a instituição embaixo e o curso, como "Direito (Graduação)", no lápis, onde dá para corrigir.

Entram na mesma aba os projetos de ensino e o que o Lattes guarda como produção técnica, mas é aula: os cursos de curta duração ministrados, as aulas e o material didático. No construtor, esses itens continuam na seção de origem ("Demais tipos de produção técnica"); só no site eles mudam de lugar.

Currículo em PDF

O site sai também com uma aba CV: o mesmo conteúdo, num currículo em formato neutro, no padrão que se usa fora do Brasil. É o modelo de duas colunas, com as datas à esquerda, os títulos de seção em maiúsculas, Times em preto sobre branco e as seções na ordem de um currículo acadêmico (formação, experiência, ensino, pesquisa, publicações, apresentações, orientações, prêmios, idiomas). Quem visita lê ali mesmo, no computador ou no celular, e baixa o PDF em A4 com um clique. Imprimir com a aba aberta também imprime só o currículo.

  • O PDF vai dentro do index.html. O construtor gera o arquivo no seu navegador, sem servidor nenhum, e o embute no site. Continua sendo um arquivo só para enviar ao GitHub.
  • O conteúdo é o do site: só o que você manteve, com as suas edições. As produções aparecem com a referência completa, e o seu nome em negrito. Mudou algo? Baixe o index.html de novo e o PDF vem junto, atualizado.
  • Em inglês, sai em inglês. No site em dois idiomas há um CV para cada um, com os rótulos e os campos "Em inglês" que você preencheu, pela mesma regra do resto do site.
  • Para ter o PDF à mão, para mandar por e-mail, use o botão da etapa Publicar ou o da aba CV na Revisão.
  • Já tem o seu? Escolha "Meu próprio PDF" na Aparência e envie o arquivo (até 5 MB). A aba CV passa a oferecer esse PDF, como ele está. No site em dois idiomas dá para enviar um para cada versão, e um só vale para as duas. O PDF fica guardado neste navegador e vai dentro do index.html, então volta também quando você reabre o site pela etapa Atualizar. Ele fica público: confira antes se não traz telefone, endereço ou documento.
  • Não quer? Escolha "Sem o CV" na Aparência ou na Revisão.

Seus dados ficam com você

O construtor roda inteiro no seu navegador: o currículo, a foto e os textos não são enviados a servidor nenhum. O site mostra só o que já está público no seu Lattes, e só o que você escolheu mostrar.

O PageLattes é um projeto independente, sem vínculo com o CNPq ou com a Plataforma Lattes.

Para quem programa

É um site estático, sem etapa de build e sem dependências: HTML, CSS e JavaScript puros. Para rodar localmente, sirva a pasta com qualquer servidor, por exemplo:

python -m http.server 8765

e abra http://localhost:8765.

Onde está cada coisa

Caminho O que é
index.html, css/construtor.css A casca do construtor. O visual é preto e branco de propósito, para não se confundir com as cores do site em construção.
js/app.js As telas, o estado e o fluxo entre as etapas. O progresso fica no localStorage.
js/lattes.js O leitor da página pública do Lattes. Foi construído e testado sobre páginas reais de currículos, de perfis variados.
js/site.js Gera o HTML do site final. As escolhas vão embutidas num <script type="application/json">, que é o que a etapa Atualizar relê.
js/cv.js O currículo em formato neutro: monta, a partir do conteúdo do site, o modelo que vira a aba CV (HTML) e o PDF.
js/pdf.js Um gerador de PDF mínimo, sem dependências: páginas A4, as quatro Times padrão do PDF (nenhuma fonte embutida), links e compressão pelo próprio navegador (CompressionStream).
js/tema.js Fundos, cores (com ajuste automático de contraste), fontes e estruturas.
js/i18n.js O idioma da interface.
js/ingles.js As regras do site em inglês: grau da formação, curso das disciplinas ministradas, idiomas, país e nome de instituição. Só vocabulário fechado; não há tradução automática.
fonts/ As fontes, com as licenças ao lado. O site final embute só o par escolhido.
prints/ Os prints deste README e os scripts que geram as imagens: gerar.js (os prints) e gerar-og.py (o card de compartilhamento).
og.png, og-en.png O card 1200×630 genérico dos sites gerados até setembro de 2026. Os sites novos têm card próprio, mas os já publicados ainda apontam para estes arquivos.
parked/ O tradutor por IA que foi estacionado, com o motivo (veja abaixo).

Idiomas

O construtor está em português e em inglês (botões PT / EN no cabeçalho). Os textos são escritos em português no código; as traduções ficam em blocos I18n.registrar no início de cada módulo, e js/i18n.js explica o mecanismo.

O site gerado pode sair em português, em inglês ou nos dois, com um botão PT/EN para o visitante; a escolha é feita na etapa Aparência. Não há tradução automática. Em inglês, sai traduzido só o que tem vocabulário fechado: os rótulos do site (abas, títulos de seção, tipos de produção), o grau da formação ("Doutorado em" vira "PhD in"), o curso das disciplinas ministradas ("Direito (Graduação)" vira "Law (Undergraduate)"), os idiomas e a proficiência da seção Idiomas, os países e os nomes de instituição que js/ingles.js conhece por regra. Tudo o mais fica em português, a não ser o que a pessoa escrever em inglês na etapa Conteúdo: a apresentação, a linha abaixo do nome, os interesses, o texto de cada destaque e, item a item, o texto, o detalhe e a descrição de cada registro fora das produções. O que ficar vazio aparece em português. As produções (referências bibliográficas) e as orientações não mudam de idioma: são registros, no idioma em que foram publicados.

Tradução por IA: estacionada. O construtor chegou a traduzir a apresentação e os destaques com um modelo rodando dentro do navegador. Isso foi retirado em 2026-09-12 e está guardado em parked/, com o código, o motivo e os números medidos em 214 currículos reais: o conteúdo do Lattes não traduz bem nem por regras nem pela metade, e a versão escrita pela própria pessoa é a única honesta. O histórico, e o que voltou depois, estão em parked/README.md.

Refazer os prints

Os prints deste README saem de um roteiro em Puppeteer que percorre as etapas no Chrome já instalado no computador, com o currículo de demonstração escrito no próprio roteiro, onde estão também as fontes de cada dado. Cada print sai com um visual diferente. Com o construtor servido em 127.0.0.1:8765:

cd prints
npm install
node gerar.js

Fontes

As fontes em fonts/ são distribuídas sob a SIL Open Font License; os textos das licenças estão na mesma pasta.

O que o site gerado diz aos buscadores

O <head> de cada site sai com <title> de "Nome — o que a pessoa faz" (só o nome perde para qualquer homônimo), meta description tirada da apresentação, og: para o card de compartilhamento e dado estruturado JSON-LD schema.org/Person, com sameAs apontando para os perfis que a pessoa já pôs no site (Lattes, ORCID, Google Acadêmico, LinkedIn) — é isso que ajuda o buscador a entender que os perfis e o site são da mesma pessoa. O e-mail fica fora do JSON-LD de propósito: já está na página para quem lê, e ali só facilitaria a coleta automática.

A <link rel="canonical"> e a og:url saem do nome de usuário da etapa Publicar, e ficam de fora enquanto ele não estiver preenchido: melhor não ter canonical do que apontar para o lugar errado.

O card de compartilhamento (WhatsApp, LinkedIn, Bluesky) mostra as iniciais do nome sobre a cor de destaque, na fonte de título mais parecida, como o ícone da aba. Rede social nenhuma baixa um endereço data:, e o site é um arquivo só; por isso o PNG é desenhado pelo placehold.co a partir do próprio endereço, com cor, letras e fonte na URL. As iniciais ficam no centro da imagem de 1200×630, que é o recorte quadrado do WhatsApp. Uma versão 192×192 entra como apple-touch-icon, que o Google também aceita como ícone do resultado de busca, no lugar do globo cinza. A foto da pessoa seria ainda melhor, mas usar a foto exigiria publicar um segundo arquivo.

Vale lembrar que nada disso faz o Google achar o site: o que faz é ter links apontando para ele (o campo de página do próprio Lattes, o ORCID, o LinkedIn, a página do departamento) e registrar o endereço no Google Search Console.

Melhorias a serem implementadas

A lista completa, com o que já foi descartado e por quê, está em TODO.md. Resumo:

  • Produções com link direto para o DOI, quando o Lattes trouxer um.
  • Botão de "copiar citação" em ABNT nas produções.
  • Produções agrupadas por ano.
  • robots.txt simples no site do construtor.

Parte dessas ideias veio da inspeção do tema Jekyll al-folio e de sua aplicação em https://github.com/bdcdo/bdcdo.github.io.

Autoria

Idealizado por Luiz Cláudio Pimenta Filho e escrito com o Claude Code, da Anthropic.

About

Monte seu site pessoal a partir do Currículo Lattes e publique no GitHub Pages

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages