<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pt">
    <title>dasdwqdf</title>
    <subtitle>Um espaço pessoal para escrever sobre código, projetos e o que mais der vontade.</subtitle>
    <link rel="self" type="application/atom+xml" href="https://dasdwqdf.vhdn.com.br/atom.xml"/>
    <link rel="alternate" type="text/html" href="https://dasdwqdf.vhdn.com.br"/>
    <generator uri="https://www.getzola.org/">Zola</generator>
    <updated>2026-10-02T00:00:00+00:00</updated>
    <id>https://dasdwqdf.vhdn.com.br/atom.xml</id>
    <entry xml:lang="pt">
        <title>Como foi criar este site</title>
        <published>2026-10-02T00:00:00+00:00</published>
        <updated>2026-10-02T00:00:00+00:00</updated>
        
        <author>
          <name>Unknown</name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://dasdwqdf.vhdn.com.br/posts/como-foi-criar-este-site/"/>
        <id>https://dasdwqdf.vhdn.com.br/posts/como-foi-criar-este-site/</id>
        
        <content type="html" xml:base="https://dasdwqdf.vhdn.com.br/posts/como-foi-criar-este-site/">&lt;p&gt;Tudo começou numa sexta-feira à tarde. Nos dias anteriores eu tinha esbarrado no Twitter com a &lt;a rel=&quot;external&quot; href=&quot;https://suzuori.straw.page/&quot;&gt;página pessoal do suzuori&lt;/a&gt;, um player de osu!, e ela ficou na minha cabeça.&lt;/p&gt;
&lt;p&gt;O design me chamou atenção justamente por ser simples. Hoje a gente vive cercado de páginas com cara de IA slop, cheias de cards dentro de cards, cada vez mais complexas e &quot;modernas&quot;, e aquele jeito básico de fazer site meio que caiu no esquecimento. Então, com meu amigo Maot na call e uma assinatura nova do Claude recém-paga, resolvemos colocar nosso amigo Claude para trabalhar.&lt;/p&gt;
&lt;h2 id=&quot;comecando-pelo-figma&quot;&gt;Começando pelo Figma&lt;/h2&gt;
&lt;p&gt;Começamos instalando o plugin do Figma no Claude Code, que já vem com o MCP dele:&lt;/p&gt;
&lt;pre class=&quot;giallo z-code&quot; &gt;&lt;code data-lang=&quot;plain&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;/plugin install figma@claude-plugins-official&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Depois disso criamos um projeto novo no Figma e começamos a juntar referências. Além da página do suzuori, entraram o omdb, o próprio site do osu! e a página do anime 11eyes. A ideia nunca foi copiar nenhum deles, e sim utilizá-los como referência.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://dasdwqdf.vhdn.com.br/posts/como-foi-criar-este-site/img/referencias.png&quot; alt=&quot;Referências reunidas no Figma: blog do suzuori, omdb, osu! e 11eyes&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Pedimos para o Claude montar algumas propostas a partir disso. Primeiro vieram três paletas de cores, e a que ganhou foi a &quot;Céu Azul&quot;, um fundo lavanda com roxo, rosa e um azul de link bem clássico. Com a paleta escolhida, pedimos uma segunda rodada, agora com quatro layouts diferentes: uma janela no estilo Windows 98, um caderno pautado com abas, um &quot;HTML 1999&quot; com tabelas e fonte serifada, e um com caixas de diálogo de RPG, com status e inventário.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://dasdwqdf.vhdn.com.br/posts/como-foi-criar-este-site/img/propostas-de-design.png&quot; alt=&quot;Primeiras propostas de design&quot; /&gt;&lt;/p&gt;
&lt;h2 id=&quot;indo-para-o-penpot&quot;&gt;Indo para o Penpot&lt;/h2&gt;
&lt;p&gt;No meio do caminho batemos no limite de chamadas do MCP do Figma. Foi aí que o Maot sugeriu o Penpot, uma ferramenta de design parecida com o Figma, só que gratuita e open source, que também tem um MCP para o Claude conversar com ela.&lt;/p&gt;
&lt;p&gt;Diferente do Figma, o MCP do Penpot roda na sua própria máquina. O primeiro passo é baixar e subir o servidor, o que dá para fazer com um comando só:&lt;/p&gt;
&lt;pre class=&quot;giallo z-code&quot; &gt;&lt;code data-lang=&quot;shellscript&quot; data-prompt=&quot;true&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-7&quot;&gt;npx&lt;/span&gt;&lt;span class=&quot;z-4&quot;&gt; -y @penpot/mcp@latest&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Esse comando deixa dois endereços rodando: um em &lt;code&gt;localhost:4400&lt;/code&gt;, com o plugin que vai dentro do Penpot, e outro em &lt;code&gt;localhost:4401&lt;/code&gt;, que é o MCP em si. Com ele de pé, falta apresentar o servidor ao Claude Code:&lt;/p&gt;
&lt;pre class=&quot;giallo z-code&quot; &gt;&lt;code data-lang=&quot;shellscript&quot; data-prompt=&quot;true&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-7&quot;&gt;claude&lt;/span&gt;&lt;span class=&quot;z-4&quot;&gt; mcp add penpot -t http http://localhost:4401/mcp&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Por fim, dentro do Penpot, é só carregar o plugin pelo endereço &lt;code&gt;http://localhost:4400/manifest.json&lt;/code&gt; e clicar em &quot;Connect to MCP server&quot;. A partir daí o Claude consegue ler e desenhar direto no seu arquivo, desde que a aba do Penpot fique aberta com o plugin ligado.&lt;/p&gt;
&lt;h2 id=&quot;escolhendo-o-modelo&quot;&gt;Escolhendo o modelo&lt;/h2&gt;
&lt;p&gt;Com os quatro layouts lado a lado, o que mais me ganhou foi o HTML 1999. Mas eu ainda queria um modo escuro, então testamos mais algumas coisas em cima dele: seis esquemas de cores e doze combinações de fontes.&lt;/p&gt;
&lt;p&gt;No fim ficaram dois temas. O escuro usa as cores do meu terminal, o kitty, com fundo cinza, texto branco e aquele cursor verde. O claro é o Lavanda, que veio da paleta Céu Azul. Para as fontes, ficou a JetBrains Mono nos títulos e a Tinos no texto, que lembra bastante a Times New Roman de antigamente.&lt;/p&gt;
&lt;p&gt;Também aproveitei para enxugar algumas coisas na mão. Saíram o banner de &quot;em construção&quot;, o livro de visitas e o contador de visitas. Por mais que sejam a cara da época, eu queria um site estático de verdade, sem nada que precisasse de servidor. A única coisa bem anos 2000 que ficou foi o botão 88x31, um terminal em pixel art com cursor piscando, que você encontra na página Sobre.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://dasdwqdf.vhdn.com.br/posts/como-foi-criar-este-site/img/modelos-finais.jpg&quot; alt=&quot;Modelos finais no Penpot&quot; /&gt;&lt;/p&gt;
&lt;h2 id=&quot;do-design-para-o-codigo&quot;&gt;Do design para o código&lt;/h2&gt;
&lt;p&gt;Implementar de fato foi a parte mais tranquila. Eu queria escrever os posts em Markdown e ter só arquivos estáticos no final, sem banco de dados e sem servidor rodando nada. Olhamos algumas opções, como o Hugo e o Eleventy, e acabamos indo de &lt;a rel=&quot;external&quot; href=&quot;https://www.getzola.org/&quot;&gt;Zola&lt;/a&gt;, um gerador de sites estáticos escrito em Rust. Ele é um binário só, sem dependências, e já vem com quase tudo pronto: destaque de código, feed, índice de busca, categorias e tags.&lt;/p&gt;
&lt;p&gt;O fluxo de trabalho é bem simples. Enquanto escrevo, deixo um servidor local rodando, que recarrega a página sozinho a cada arquivo salvo. Quando está tudo certo, o build gera a pasta &lt;code&gt;public/&lt;/code&gt; com o site pronto:&lt;/p&gt;
&lt;pre class=&quot;giallo z-code&quot; &gt;&lt;code data-lang=&quot;shellscript&quot; data-prompt=&quot;true&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-7&quot;&gt;zola&lt;/span&gt;&lt;span class=&quot;z-4&quot;&gt; serve&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-7&quot;&gt;zola&lt;/span&gt;&lt;span class=&quot;z-4&quot;&gt; build&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Nesse contexto, passamos o design do Penpot para HTML e CSS praticamente tela por tela: a Home, a lista de posts com filtros e busca, a página do post com sumário e blocos de código, e a página Sobre. As cores dos dois temas viraram variáveis no topo do CSS, então trocar de tema é só trocar o conjunto de variáveis. Depois disso fomos acertando os textos aos poucos, em português e em inglês.&lt;/p&gt;
&lt;p&gt;Algumas regras guiaram tudo. O site precisa funcionar sem JavaScript, e o pouco que existe serve só para o botão de tema, o botão de copiar código e a busca, que roda inteira no navegador em cima de um índice gerado pelo próprio Zola. Também não tem nenhum rastreador nem nada vindo de fora: até as fontes ficam no próprio site.&lt;/p&gt;
&lt;p&gt;Para não ter que montar tudo na mão a cada post, ainda ganhei um scriptzinho que cria a pasta do post, já com o cabeçalho preenchido e uma pasta para as imagens. Foi com ele que este texto nasceu:&lt;/p&gt;
&lt;pre class=&quot;giallo z-code&quot; &gt;&lt;code data-lang=&quot;shellscript&quot; data-prompt=&quot;true&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-7&quot;&gt;./novo-post.sh&lt;/span&gt;&lt;span class=&quot;z-4&quot;&gt; -c pessoal -t &amp;quot;zola,penpot&amp;quot; &amp;quot;Como foi criar este site&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Por fim, o site fica hospedado no Cloudflare Workers, servindo só os arquivos estáticos, sem nenhum código rodando no servidor. Publicar uma versão nova é gerar o build e mandar a pasta para lá:&lt;/p&gt;
&lt;pre class=&quot;giallo z-code&quot; &gt;&lt;code data-lang=&quot;shellscript&quot; data-prompt=&quot;true&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-7&quot;&gt;zola&lt;/span&gt;&lt;span class=&quot;z-4&quot;&gt; build&lt;/span&gt;&lt;span&gt; &amp;amp;&amp;amp;&lt;/span&gt;&lt;span class=&quot;z-7&quot;&gt; npx&lt;/span&gt;&lt;span class=&quot;z-4&quot;&gt; wrangler deploy&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;O resultado é este que você está vendo agora na sua tela.&lt;/p&gt;
&lt;p&gt;Obrigado por ler.&lt;/p&gt;
</content>
        
    </entry>
</feed>
