publish-to-pages
Ajuda seu agente a publicar apresentações e conteúdo web no GitHub Pages. Ele converte arquivos e cuida da configuração para que você tenha um link online.
O que ela faz
Esta ferramenta transforma apresentações (PPTX, Google Slides) ou documentos (PDF, HTML) em um site simples que pode ser acessado por um link público. Ela cuida de todo o processo de publicação no GitHub Pages.
Quando usar
- ✓Quando você quer compartilhar uma apresentação como um link.
- ✓Quando você tem um PDF e quer torná-lo acessível online.
- ✓Quando você quer transformar um arquivo HTML em um site rápido.
Exemplo do que pedir para a IA
“Transforme minha apresentação 'ideias.pptx' em um site no GitHub Pages com o nome 'minhas-ideias'.”
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 ferramenta verifica se você tem as ferramentas necessárias instaladas. Depois, ela converte seu arquivo (PPTX, PDF, Google Slides) para um formato de site (HTML) e o envia para um repositório no GitHub, ativando o GitHub Pages para que ele fique acessível por um link.
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 github/awesome-copilot --skill publish-to-pagesOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/github/awesome-copilot/main/skills/publish-to-pages/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.
publish-to-pages
Publique qualquer apresentação ou conteúdo web no GitHub Pages de uma só vez.
1. Verificação de Pré-requisitos
Execute estes silenciosamente. Apenas mostre erros:
command -v gh >/dev/null || echo "MISSING: gh CLI — install from https://cli.github.com"
gh auth status &>/dev/null || echo "MISSING: gh not authenticated — run 'gh auth login'"
command -v python3 >/dev/null || echo "MISSING: python3 (needed for PPTX conversion)"
poppler-utils é opcional (conversão de PDF via pdftoppm). Não bloqueie por causa disso.
2. Detecção de Entrada
Determine o tipo de entrada a partir do que o usuário fornece:
| Entrada | Detecção |
|---|---|
| Arquivo HTML | Extensão .html ou .htm |
| Arquivo PPTX | Extensão .pptx |
| Arquivo PDF | Extensão .pdf |
| URL do Google Slides | URL contém docs.google.com/presentation |
Peça ao usuário um nome de repositório se não for fornecido. Padrão: nome do arquivo sem extensão.
3. Conversão
Tratamento de Arquivos Grandes
Ambos os scripts de conversão detectam automaticamente arquivos grandes e mudam para o modo de ativos externos:
- PPTX: Arquivos >20MB ou com >50 imagens → imagens salvas como arquivos separados em
assets/ - PDF: Arquivos >20MB ou com >50 páginas → PNGs de página salvos em
assets/ - Arquivos >150MB imprimem um aviso (PPTX sugere o caminho do PDF em vez disso)
Isso mantém os arquivos individuais bem abaixo do limite de 100MB do GitHub. Arquivos pequenos ainda produzem um único HTML autocontido.
Você pode forçar o comportamento com --external-assets ou --no-external-assets.
HTML
Nenhuma conversão necessária. Use o arquivo diretamente como index.html.
PPTX
Execute o script de conversão:
python3 SKILL_DIR/scripts/convert-pptx.py INPUT_FILE /tmp/output.html
# For large files, force external assets:
python3 SKILL_DIR/scripts/convert-pptx.py INPUT_FILE /tmp/output.html --external-assets
Se python-pptx estiver faltando, diga ao usuário: pip install python-pptx
Converta com o script incluído (requer poppler-utils para pdftoppm):
python3 SKILL_DIR/scripts/convert-pdf.py INPUT_FILE /tmp/output.html
# For large files, force external assets:
python3 SKILL_DIR/scripts/convert-pdf.py INPUT_FILE /tmp/output.html --external-assets
Cada página é renderizada como um PNG e incorporada ao HTML com navegação de slides.
Se pdftoppm estiver faltando, diga ao usuário: apt install poppler-utils (ou brew install poppler no macOS).
Google Slides
- Extraia o ID da apresentação da URL (a string longa entre
/d/e/) - Baixe como PPTX:
curl -L "https://docs.google.com/presentation/d/PRESENTATION_ID/export/pptx" -o /tmp/slides.pptx
- Em seguida, converta o PPTX usando o script de conversão acima.
4. Publicação
Visibilidade
Repositórios são criados públicos por padrão. Se o usuário especificar private (ou quiser um repositório privado), use --private — mas observe que o GitHub Pages em repositórios privados requer um plano Pro, Team ou Enterprise.
Publicar
bash SKILL_DIR/scripts/publish.sh /path/to/index.html REPO_NAME public "Description"
Passe private em vez de public se o usuário solicitar.
O script cria o repositório, envia index.html (mais assets/ se presente) e habilita o GitHub Pages.
Observação: Quando o modo de ativos externos é usado, o HTML de saída referencia arquivos em assets/. O script de publicação detecta e copia automaticamente o diretório assets/ ao lado do arquivo HTML. Certifique-se de que o arquivo HTML e seu diretório assets/ estejam no mesmo diretório pai.
5. Saída
Diga ao usuário:
- Repositório:
https://github.com/USERNAME/REPO_NAME - URL ao vivo:
https://USERNAME.github.io/REPO_NAME/ - Observação: O Pages leva de 1 a 2 minutos para ficar ativo.
Tratamento de Erros
- Repositório já existe: Sugira adicionar um número (
my-slides-2) ou uma data (my-slides-2026). - Falha na habilitação do Pages: Ainda retorne a URL do repositório. O usuário pode habilitar o Pages manualmente nas Configurações do repositório.
- Falha na conversão de PPTX: Diga ao usuário para executar
pip install python-pptx. - Falha na conversão de PDF: Sugira instalar
poppler-utils(apt install poppler-utilsoubrew install poppler). - Falha no download do Google Slides: A apresentação pode não estar acessível publicamente. Peça ao usuário para torná-la visualizável ou baixar o PPTX manualmente.
Perguntas frequentes
E se o arquivo for muito grande?
Se o arquivo for muito grande (ex: mais de 20MB ou com muitas imagens/páginas), a ferramenta o divide em partes menores para que o GitHub possa hospedá-lo sem problemas, mantendo o link funcional.
O que acontece se o nome do site já existir no GitHub?
A ferramenta sugerirá um novo nome, como adicionar um número ou data ao nome original, para que você possa criar um novo site.
O que é GitHub Pages?
É um serviço gratuito do GitHub que permite hospedar sites estáticos diretamente de um repositório. É ótimo para compartilhar projetos, apresentações ou documentação.
Detalhes
Descrição original do autor
Publish presentations and web content to GitHub Pages. Converts PPTX, PDF, HTML, or Google Slides to a live GitHub Pages URL. Handles repo creation, file conversion, Pages enablement, and returns the live URL. Use when the user wants to publish, deploy, or share a presentation or HTML file via GitHub Pages.
repo: github/awesome-copilot
Popularidade
- Estrelas no GitHub
- 40 mil
- Posição no ranking
- #5291
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
acquire-codebase-knowledge
Ajuda seu agente a entender e documentar um projeto de código existente. É útil para novas pessoas entrarem no projeto ou para ter uma visão geral da arquitetura.
github/awesome-copilot
acreadiness-assess
Faz seu agente avaliar a prontidão de um projeto para IA e gerar um relatório. É útil para entender o quão bem um projeto está preparado para usar ferramentas de IA.
github/awesome-copilot
acreadiness-generate-instructions
Ajuda seu agente a criar instruções para ferramentas de IA baseadas em uma avaliação. É útil para melhorar a forma como a IA interage com o código e fecha lacunas identificadas.
github/awesome-copilot
acreadiness-policy
Faz seu agente ajudar a definir ou aplicar políticas para avaliação de projetos de IA. É útil para padronizar a forma como os projetos são avaliados e garantir conformidade.
github/awesome-copilot
Skills parecidas
bun-runtime
Faz seu agente usar o Bun para rodar, organizar e testar código. Ajuda a escolher o Bun em vez de outras ferramentas e a migrar projetos existentes.
affaan-m/ECC
database-migrations
Ajuda seu agente a fazer mudanças seguras em bancos de dados. Ele garante que as alterações possam ser desfeitas e minimiza o tempo de inatividade.
affaan-m/ECC
deployment-patterns
Configura fluxos de implantação e CI/CD, containerização e estratégias de rollback para garantir lançamentos seguros.
affaan-m/ECC