huashu-annual-letter
Ajuda seu agente a contar a história de uma empresa, o que ela aprendeu e seus planos futuros. É útil para comunicar a estratégia da empresa para a comunidade.
O que ela faz
Cria uma página da web especial que parece uma carta anual, contando a história de uma empresa, o que ela aprendeu e seus planos futuros. É visualmente atraente e fácil de ler.
Quando usar
- ✓Para compartilhar o resumo anual de uma empresa com sua comunidade.
- ✓Para apresentar os aprendizados e planos de uma organização de forma clara.
- ✓Para criar um documento oficial de estratégia corporativa para investidores ou parceiros.
Exemplo do que pedir para a IA
“Crie uma carta anual para a 'TechGlobal' sobre o ano de 2023, destacando nosso crescimento em inteligência artificial e nossos planos de expansão para a Europa.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
A IA pega seu texto e o organiza em um formato de página da web com um design específico. Ela usa parágrafos de texto, caixas com números importantes e um visual limpo, sem cores ou fontes extras.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add nexu-io/open-design --skill huashu-annual-letterOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/nexu-io/open-design/main/plugins/_official/examples/huashu-annual-letter/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Carta Anual · 年度信笺
Produza um deck HTML de página única, com qualidade de carta, no gênero Carta Anual da Stripe: uma carta publicada que você lê, não um modelo que você folheia. A prosa flui em parágrafos com serifa; os números vivem em cartões de dados inline e âncoras de exibição gigantes. O sistema visual, o contrato de tela e o runtime de navegação são travados por example.html. Comece em example.html, substitua apenas o conteúdo — não reescreva o design ou o script, e nunca introduza cores ou fontes fora desta especificação.
Adaptado do estilo editorial de longform (references/design-styles.md, 安静派 · 杂志编辑长文流 / Editorial Longform) de huashu-design por 花叔 (alchaincyf), licenciado sob MIT. Linhagem de referência: Stripe Annual Letter, Amazon six-page narrative memos, Stripe Press.
Especificação Rígida (travada — violar qualquer linha é uma regressão)
Tela e dimensionamento
- Uma
<div id="stage">fixa em 1920 × 1080 px, centralizada composition: fixed; top: 50%; left: 50%. - Uma função
fit()dimensiona o palco para a viewport:scale = min(innerWidth / 1920, innerHeight / 1080), aplicada comotranslate(-50%, -50%) scale(s), reexecutada emresize. Com barras pretas, nunca cortada. - Todo o layout dentro do palco usa px (nunca
vw/vh/%para tipografia) — o escalador cuida da responsividade.
Slides e runtime de navegação (não reescreva o script)
- Cada página é um
<section class="slide">diretamente dentro de#stage, com um rótulo no estilodata-screen-label="01 刊头"(indexado em 1). - Exatamente um slide carrega
.active. Sem páginas.darkneste tema — cada página fica em papel creme; o ritmo vem da densidade, não de mudanças de tema. - Teclado:
←/↑/PageUpanterior ·→/↓/Space/PageDownpróximo ·Home/Endprimeiro/último. Roteamento por hash#/N(indexado em 1) lido ao carregar ehashchange, escrito viahistory.replaceState. Clique: um terço esquerdo para voltar, o resto para avançar. Contador fixo no canto inferior direito, dica de tecla no canto inferior esquerdo. - Zero JS externo, zero etapa de build; o arquivo deve abrir via
file://dentro de um iframe com sandbox.
Tokens de design (em :root, mantenha os nomes — re-tematize alterando apenas os valores)
--paper: #FBFAF8; /* cream paper, every page */
--panel: #FFFFFF; /* data-card surface */
--ink: #232036; /* deep ink text */
--ink-70: rgba(35, 32, 54, 0.72); /* prose body */
--ink-45: rgba(35, 32, 54, 0.46); /* captions, chrome */
--hairline: rgba(35, 32, 54, 0.12); /* all rules */
--accent: #635BFF; /* Stripe purple — the ONLY accent */
--accent-soft: rgba(99, 91, 255, 0.08); /* tint panels, quote marks */
--serif: "Newsreader", "Source Serif 4", "Noto Serif SC", Georgia, serif;
--serif-text: "Source Serif 4", "Newsreader", "Noto Serif SC", Georgia, serif;
--sans: "Inter", "Noto Sans SC", -apple-system, sans-serif;
- Fontes via Google Fonts
@import: Newsreader (display, incl. itálico), Source Serif 4 (prosa), Noto Serif SC (serifa CJK), Inter, Noto Sans SC. - Todos os numerais tabulares: a classe compartilhada
.numdefinefont-variant-numeric: tabular-nums; cada métrica, ano e número de exibição a utiliza. - Um acento. Nunca uma segunda tonalidade, nunca um gradiente, nunca um slide escuro.
Cromagem da carta (cada página)
- Cabeçalho faixa superior com linha fina: nome da publicação/empresa à esquerda (Inter em small-caps, com espaçamento entre letras, palavra da marca em acento), edição + data à direita.
- Rodapé linha fina: nome da seção à esquerda, metadados do autor/edição à direita. A numeração das páginas vive apenas no contador do runtime no canto inferior direito — nunca também impressa dentro de um slide.
- Títulos em
var(--serif)(Newsreader/Noto Serif SC), peso 500–600 — as letras são definidas elegantemente, não em negrito; palavras-chave recebemclass="hl"(acento), nunca o título inteiro. - Kicker: rótulo em small-caps Inter com uma barra de acento curta de 44×3px acima dos títulos das seções.
- Cópia chinesa usa aspas 「」; 中英混排 mantém o inglês em Newsreader itálico.
Dispositivos de assinatura (o gênero — use-os, não substitua)
| Dispositivo | Especificação |
|---|---|
| Medida da prosa | parágrafos max-width: 980px (≈65ch), serifa 25–27px, line-height: 1.9, text-align: justify opcional |
| Letra capitular | primeiro parágrafo do corpo da carta: ::first-letter serifa, ~3 linhas de altura, cor de acento |
| Cartão de dados inline | fundo --panel, linha fina de 1px, regra superior de acento de 2–3px, rótulo em small-caps Inter + número grande de serifa tabular + legenda de uma linha; flutuado ao lado ou em grade ao lado da prosa |
…
Perguntas frequentes
Preciso saber programar para usar isso?
Não, você só precisa fornecer o texto que quer incluir. A IA cuida de toda a parte técnica e do design.
Posso mudar as cores ou o estilo?
Não, o design é fixo para manter o estilo de 'carta anual' e garantir que tudo fique profissional e consistente.
O que são 'data cards' e 'display anchors'?
'Data cards' são pequenas caixas que mostram números importantes com um título. 'Display anchors' são números grandes que chamam a atenção em uma página inteira.
Detalhes
Descrição original do autor
OpenDesign's annual letter to its community: the year's story, what it learned, and where it's going next. Built as a decision-grade corporate strategy deck for community, contributors, investors.
repo: nexu-io/open-design
Popularidade
- Estrelas no GitHub
- 101 mil
- Posição no ranking
- #561
- Licença
- Apache-2.0
- Atualizada em
- 16/10/2026
Comentários
- …
Mais skills deste repositório
sample-plugin
Faz seu agente criar um arquivo de metadados para testes. Ele ajuda a garantir que o código funcione corretamente em diferentes situações.
nexu-io/open-design
aster-atelier
Ajuda seu agente a criar um site artístico com visual clássico. Ele usa imagens elegantes, céus azuis e fontes serifadas para um visual cinematográfico.
nexu-io/open-design
audio-jingle
Faz seu agente gerar áudio como jingles e efeitos sonoros. Ele pode criar músicas e vozes, salvando o resultado em um arquivo de áudio.
nexu-io/open-design
blog-post
Ajuda seu agente a escrever artigos longos ou posts de blog. Ele inclui espaços para imagens, citações e informações do autor.
nexu-io/open-design
Skills parecidas
architecture-decision-records
Faz seu agente registrar decisões importantes sobre a estrutura do projeto. Ajuda a entender o porquê das escolhas feitas e a manter um histórico claro das mudanças.
affaan-m/ECC
code-tour
Faz seu agente criar guias passo a passo no código, com locais exatos em arquivos e linhas. É útil para apresentar um projeto, explicar código ou revisar mudanças. Ajuda a entender como um sistema funciona.
affaan-m/ECC
codebase-onboarding
Ajuda seu agente a analisar um código desconhecido e criar um guia de integração. Ele inclui um mapa da arquitetura, pontos de entrada e convenções. Ideal para quem está começando em um novo projeto.
affaan-m/ECC