Table of Contents
Principal
🎓 Markdown Moderno para Computação
"A documentação técnica deixou de ser um anexo para se tornar o coração da engenharia de software moderna."
Bem-vindo à sua jornada no domínio da linguagem de marcação mais utilizada no mundo Dev. Este curso foi projetado para capacitar programadores e analistas a criar documentações ricas, diagramas dinâmicos e apresentações profissionais usando Markdown Moderno.
⚡ Atalhos Rápidos
-
Trilha de Aulas --- 16 lições modernas englobando do básico ao avançado. Iniciar Jornada
-
Slides Interativos --- Material visual otimizado com transições e suporte Reveal.js. Ver Slides
-
Quizzes e Prática --- Avalie seu progresso com 160 questões técnicas exclusivas. Testar Conhecimento
-
Laboratórios e Projetos --- Aplique conceitos em cenários reais de documentação. Ver Projetos
-
Exercícios Progressivos --- Das questões conceituais ao desafio prático de código. Praticar Agora
-
Setup e Ferramentas --- Configurações essenciais para VS Code e Ecossistema MkDocs. Configurar
🗺️ Mapa da Jornada (Módulos)
O curso está estruturado em 4 Módulos cruciais para a maestria em documentação:
📦 Módulo 1: Fundamentos e Escrita Técnica
A base sólida para toda documentação profissional. - Aulas 01 a 04: Introdução, Sintaxe Básica, Boas Práticas e Markdown para Programação.
📐 Módulo 2: Estrutura e Dados
Organizando informações complexas com elegância. - Aulas 05 a 08: Tabelas, Integração com GitHub, Markdown Estendido e Projeto Intermediário.
🧠 Módulo 3: Visualização e Ciência
Transformando texto em insights visuais e fórmulas. - Aulas 09 a 12: Diagramas Mermaid (Básico/Avançado), MathJax e Conteúdo Acadêmico.
💻 Módulo 4: Automação e Entrega
O topo da cadeia: apresentações e ambientes interativos. - Aulas 13 a 16: Slides com Reveal.js, Termynal.js e Projeto Integrador Final.
💡 Dicas de Sucesso
- Pratique no VS Code: Use a extensão Markdown Preview para ver as mudanças em tempo real.
- Abuse do Mermaid: Diagramas facilitam a compreensão de fluxos de código complexos.
- Mantenha a Semântica: Use headers e listas corretamente para garantir a acessibilidade.
Pronto para dominar o Markdown? Ir para Aula 01
Sobre o Curso
🎓 Markdown Moderno para Computação
Este curso foi projetado para transformar a forma como estudantes e profissionais de tecnologia lidam com documentação. Deixamos de lado os documentos estáticos e entramos na era do Docs as Code.
🎯 Objetivos do Curso
-
Domínio da Sintaxe --- Do básico ao avançado, aprenda a usar o Markdown para criar documentos ricos, organizados e visualmente atraentes.
-
Documentaçao Técnica --- Aprenda a estruturar READMEs, wikis e manuais que facilitam a colaboração e o entendimento de projetos complexos.
-
:material-mermaid: Visualização de Dados --- Integre diagramas de fluxo, sequência e mapas mentais diretamente no seu texto usando Mermaid.js.
-
Apresentações Dinâmicas --- Transforme seu conteúdo técnico em slides profissionais sem precisar sair do seu editor de código.
📚 O Que Você Vai Aprender
Módulo 1 – Fundamentos e Organização
- Fluxo de trabalho Moderno e Markdown vs Word
- Sintaxe Básica (Títulos, Listas, Links, Imagens)
- Estruturação de Repositórios e READMEs profissionais
- Markdown para Programação (Blocos de código e Destaque)
Módulo 2 – Estrutura Técnica e GitHub
- Tabelas e Organização de Requisitos
- Integração Nativa com GitHub (Issues, PRs, Badges)
- Markdown Estendido (HTML embutido e Notas de rodapé)
- Projeto Intermediário de Consolidação
Módulo 3 – Diagramação e Ciência
- Mermaid na Prática: Fluxogramas
- Mermaid Avançado: Sequência, Gantt e Mindmaps
- MathJax: Fórmulas Médicas e Científicas
- Padrões de Markdown Acadêmico e Citações
Módulo 4 – Documentação Interativa
- Apresentações dinâmicas com Reveal.js
- Simulações de terminal com Termynal.js
- Grande Projeto Integrador de Portfólio
- Finalização e Próximos Passos na Carreira
🛠️ Metodologia
Foco 100% "mão na massa". Cada aula conta com lição teórica, exercícios de fixação, um quiz de validação e um mini-projeto prático. Ao final, você terá um repositório completo que demonstra sua capacidade de gerenciar o conhecimento técnico de forma moderna.
Pronto para se tornar um Markdown Master? Começar Agora
Aulas
Aulas do Curso 📚
Acompanhe as 16 aulas do curso de Markdown Moderno, organizadas por módulos para uma progressão cognitiva eficiente.
Módulo 1: Fundamentos e Escrita Técnica
- Aula 01 - Introdução ao Markdown
- Aula 02 - Sintaxe Básica
- Aula 03 - Organização e Boas Práticas
- Aula 04 - Markdown para Programação
Módulo 2: Estrutura e Dados
- Aula 05 - Tabelas e Estrutura Técnica
- Aula 06 - Markdown + GitHub
- Aula 07 - Markdown Estendido
- Aula 08 - Projeto Intermediário
Módulo 3: Visualização e Ciência
- Aula 09 - Diagramas com Mermaid
- Aula 10 - Diagramas Avançados
- Aula 11 - Fórmulas Matemáticas com MathJax
- Aula 12 - Markdown para Conteúdo Acadêmico
Módulo 4: Automação e Entrega
Módulo 1: Fundamentos
Aula 01 - Introdução ao Markdown 🚀
Objetivo
Objetivo: Entender o que é Markdown, sua importância na computação moderna, ferramentas essenciais e como ele simplifica a criação de documentação técnica.
1. O que é Markdown? 🤔
O Markdown foi criado em 2004 por John Gruber e Aaron Swartz com uma missão simples: permitir que as pessoas escrevam usando um formato de texto simples e fácil de ler, que pudesse ser convertido em HTML estruturado.
Ao contrário de editores como Word (WYSIWYG - What You See Is You Get), o Markdown foca no conteúdo e na estrutura, não apenas na aparência imediata.
🌟 Por que aprender Markdown?
- Universalidade: Funciona em qualquer editor de texto.
- Portabilidade: Fácil de converter para PDF, HTML, Slides e até E-books.
- Padrão de Mercado: É a alma do GitHub, GitLab, StackOverflow e ferramentas de documentação como MkDocs e Docusaurus.
2. Onde o Markdown é Utilizado? 🌍
O Markdown está em todo lugar no ecossistema de desenvolvimento:
- Documentação de Código: Arquivos
README.mdque explicam projetos. - Comunicação Técnica: Issues e Pull Requests no GitHub.
- Blogs e Sites Estáticos: Hugo, Jekyll e Astro.
- Ferramentas de Produtividade: Notion, Obsidian e Slack.
3. Ferramentas e Editores 🛠️
Embora você possa escrever Markdown no Bloco de Notas, ferramentas modernas elevam sua produtividade:
- VS Code: O rei dos editores, com extensões poderosas de Live Preview.
- Typora: Um editor minimalista e focado.
- Obsidian: Para gestão de conhecimento.
Fluxo de Trabalho com MkDocs
No nosso curso, utilizaremos o MkDocs, que transforma seus arquivos .md em um site profissional automaticamente.
4. Estrutura do Ecossistema 🏗️
Markdown não é apenas texto; ele pode conter elementos avançados através de extensões.
mermaid
graph TD
MD[Markdown Simples] --> HTML[HTML Estruturado]
MD --> EX[Extensões]
EX --> MM[Mermaid - Diagramas]
EX --> MJ[MathJax - Matemática]
EX --> TERM[Termynal - Terminal]
HTML --> SITE[Site/Documentação]
5. Exemplo de Simulação de Terminal 🐚
Veja como simulamos a criação de um novo arquivo Markdown:
6. Mini-Projeto: Meu Primeiro README 🎨
Sua missão hoje é criar um arquivo README.md simples que contenha:
1. Um título principal.
2. Uma breve descrição sobre você.
3. Uma lista de tecnologias que você quer aprender.
Important
Salve este arquivo para usarmos na próxima aula!
7. Exercícios de Fixação 🧠
- O que diferencia o Markdown de um editor de texto comum como o Google Docs?
- Cite três plataformas que utilizam Markdown nativamente.
- Qual a extensão de arquivo padrão para documentos Markdown?
Próxima Aula: Vamos colocar a mão na massa com a Sintaxe Básica! ✍️
Aula 02 - Sintaxe Básica: Textos, Títulos e Listas ✍️
Objetivo
Objetivo: Dominar a formatação básica de texto, a hierarquia de títulos e a organização de informações em listas ordenadas e não ordenadas.
Hierarquia Visual
mermaid
graph TD
H1[# Título 1] --> H2[## Título 2]
H2 --> H3[### Título 3]
H3 --> H4[#### Título 4]
1. Títulos (Headers) 🏗️
Markdown usa o símbolo # para criar títulos. A quantidade de hifens determina o nível (H1 a H6).
2. Formatação de Texto ✨
Dê ênfase ao que importa e destaque trechos de código curtos:
- Negrito: Use dois asteriscos
**texto**ou dois underscores__texto__. - Itálico: Use um asterisco
*texto*ou um underscore_texto_. - ~~Tachado~~: Use dois tils
~~texto~~. Código Inline: Use crases (backticks)`texto`.
3. Listas 📝
Listas Não Ordenadas
Use asteriscos, sinais de mais ou menos: - Item A - Item B
Listas Ordenadas
Use números seguidos de ponto: 1. Primeiro passo 2. Segundo passo
4. Prática no Terminal 🐚
Simule a criação de uma estrutura de tópicos básica no Linux/Windows:
$ echo "# Meus Estudos" > notas.md
$ echo "## Aula 02" >> notas.md
$ echo "- Aprendendo negrito" >> notas.md
$ cat notas.md
# Meus Estudos
## Aula 02
- Aprendendo negrito
5. Exercício de Fixação 🧠
Crie um novo arquivo chamado aula02_exercicio.md e formate um pequeno parágrafo sobre seu livro ou filme favorito, usando pelo menos um título, uma lista e negrito em palavras-chave.
Próxima Aula: Vamos aprender sobre Links e Imagens! 🔗
Aula 03 - Organização e Boas Práticas 📂
Objetivo
Objetivo: Aprender a estruturar projetos complexos com múltiplos arquivos Markdown, criar links internos inteligentes e desenvolver READMEs que chamam a atenção pela clareza e profissionalismo.
1. Estrutura de Documentação 🧱
À medida que um projeto cresce, um único arquivo .md não é suficiente. Devemos dividir o conteúdo logicamente.
Exemplo de Estrutura de Pastas
2. Arquivos Interligados 🔗
Para criar uma navegação fluida entre seus arquivos, use links relativos.
- Link para arquivo na mesma pasta:
[Instalação](instalacao.md) - Link para arquivo em pasta acima:
[Início](../README.md) - Link para uma seção específica:
[Pular para Configuração](#configuracao)
3. O README Profissional 🐙
O README.md é a primeira impressão do seu projeto no GitHub.
Elementos Essenciais:
- Título e Badges: Para status do projeto e versão.
- Descrição Curta: O que o projeto faz?
- Principais Funcionalidades: Em listas.
- Imagens ou GIFs: Demonstração visual.
- Instruções de Uso: Como rodar?
4. Blocos de Destaque e Admonitions 💡
O MkDocs suporta blocos especiais para atrair a atenção do leitor:
Nota
Isso é uma informação útil.
Atenção
Cuidado com este passo!
Important
Use emojis moderadamente para guiar o olhar do usuário, não para poluir o texto.
5. Visualização de Fluxo de Documentação 🧜♀️
mermaid
graph LR
R[README.md] --> I[Introdução]
I --> G[Guia de Uso]
G --> A[API Reference]
G --> F[FAQ]
6. Simulação de Criação de README 🐚
$ echo "# Meu Projeto Incrível 🚀" > README.md
$ echo "## Funcionalidades" >> README.md
$ echo "- [x] Login rápido" >> README.md
$ cat README.md
7. Mini-Projeto: Documentando seu Projeto 🏗️
Sua tarefa hoje é criar a docs/ do seu repositório de estudos:
1. Crie um arquivo index.md (Página principal).
2. Crie um arquivo guia-rapido.md.
3. Adicione links no index.md que apontem para o guia-rapido.md.
4. Use pelo menos um bloco de "Dica" (!!! tip) ou "Aviso" (!!! warning).
8. Exercícios de Fixação 🧠
- Por que é importante dividir a documentação em múltiplos arquivos?
- Como se cria um link que aponta para uma seção específica (ID) de um arquivo?
- O que são Badges e qual sua utilidade no GitHub?
Próxima Aula: Vamos mergulhar no Markdown para Programação! 💻
Aula 04 - Markdown para Programação 💻
Objetivo
Objetivo: Aprender a utilizar blocos de código, aplicar destaque de sintaxe para diferentes linguagens, documentar APIs e utilizar o Termynal para simulações de linha de comando.
1. Blocos de Código e Sintaxe ⚙️
Existem duas formas de representar código:
- Código Inline: Use crases simples
`para pequenos trechos (ex:variable_name). - Blocos de Código: Use cercas de crase (fenced code blocks) com três crases
```.
Destaque de Sintaxe (Syntax Highlighting)
Indique a linguagem após as primeiras crases para que o Markdown aplique cores automáticas.
2. Documentação de APIs 📡
Markdown é perfeito para descrever endpoints e contratos de dados.
Exemplo de Documentação de Endpoint:
GET /usuarios
Retorna a lista de usuários cadastrados.
| Campo | Tipo | Descrição |
|---|---|---|
id |
Integer | ID único do usuário |
nome |
String | Nome completo |
3. Simulação de Terminal (TermynalJS) 🐚
Em documentações técnicas, mostrar a saída do terminal ajuda muito o desenvolvedor.
4. Diferenciando Saída e Entrada 📊
Ao documentar, deixe claro o que é o comando e o que é a resposta do sistema.
# Comando do usuário
git status
# Saída do sistema
On branch main
nothing to commit, working tree clean
5. Fluxo de Desenvolvimento (Mermaid) 🧜♀️
```mermaid sequenceDiagram participant Dev as Desenvolvedor participant Doc as Documentaçao .md participant Server as Servidor MkDocs
Dev->>Doc: Escreve código no bloco
Doc->>Server: Processa Destaque de Sintaxe
Server-->>Dev: Exibe código colorido no site
```
6. Mini-Projeto: Documentando um Código 🏗️
Escolha um pequeno trecho de código em qualquer linguagem que você conheça e documente-o: 1. Use um título H2 com o nome da função. 2. Adicione um parágrafo explicando o que o código faz. 3. Insira o código em um bloco com o destaque de sintaxe correto. 4. Crie uma pequena tabela descrevendo os parâmetros de entrada e o retorno.
7. Exercícios de Fixação 🧠
- Qual a diferença entre código
inlinee blocos de código? - Como indicar ao Markdown que o código escrito é em linguagem
Go? - Por que documentar o retorno (output) do terminal é importante em um tutorial técnico?
Próxima Aula: Vamos iniciar o Módulo 2 com Tabelas e Estrutura Técnica! 📊
Módulo 2: Estrutura
Aula 05 - Tabelas e Estrutura Técnica 📊
Objetivo
Objetivo: Aprender a construir e formatar tabelas complexas no Markdown, utilizar checklists para gestão de tarefas e organizar requisitos técnicos de forma estruturada.
1. Tabelas no Markdown 📊
Tabelas são formadas por barras verticais (|) e hifens (-) para a linha separadora do cabeçalho.
Exemplo Básico:
| Nome | Idade | Cidade |
|---|---|---|
| Ricardo | 35 | São Paulo |
| Maria | 28 | Curitiba |
Alinhamento 📏
:---: Alinhamento à esquerda (padrão).:---:: Alinhamento centralizado.---:: Alinhamento à direita.
2. Checklists (Listas de Tarefas) ✅
Muito úteis para documentar o que já foi feito em um projeto ou definir requisitos.
- Requisito 01 (Concluído)
- Requisito 02 (Pendente)
- Requisito 03
3. Organização de Requisitos Técnicos 🧱
Ao documentar um software, organizar os requisitos em tabelas facilita a leitura rápida dos Stakeholders.
Tabela de Requisitos Funcionais:
| ID | Descrição | Prioridade |
|---|---|---|
| RF01 | O usuário deve poder fazer login | Alta |
| RF02 | O sistema deve enviar e-mail de confirmação | Média |
4. Visualização de Estrutura (Mermaid) 🧜♀️
mermaid
graph TD
T[Tabelas] --> C[Cabeçalho]
T --> A[Alinhamento]
T --> D[Dados]
Check[Checklists] --> S[Status: x ou vazio]
5. Simulação de Criação de Tabela 🐚
$ echo "| ID | Nome |" > tabela.md
$ echo "| --- | --- |" >> tabela.md
$ echo "| 01 | Markdown |" >> tabela.md
$ cat tabela.md
| ID | Nome |
| --- | --- |
| 01 | Markdown |
6. Mini-Projeto: Dashboard de Projeto 🏗️
Crie uma página de status para um projeto fictício contendo: 1. Um título H1 com o nome do projeto. 2. Uma Tabela com o cronograma (Data, Atividade, Responsável). 3. Uma Checklist com o que já foi desenvolvido. 4. Um link para a documentação completa (Aula 03).
7. Exercícios de Fixação 🧠
- Como centralizar o conteúdo de uma coluna em uma tabela?
- Qual a diferença visual entre
[ ]e[x]no GitHub? - É possível colocar links ou negrito dentro de uma célula de tabela? (Dica: Teste!)
Próxima Aula: Vamos explorar o Markdown + GitHub! 🐙
Aula 06 - Markdown + GitHub 🐙
Objetivo
Objetivo: Explorar como o Markdown é utilizado nativamente no GitHub para gerenciar projetos, criar Issues e Pull Requests colaborativos, e utilizar Badges para status de projeto.
1. Issues e Pull Requests 📝
No GitHub, quase todo campo de texto aceita Markdown. Isso permite que você crie relatórios de erros (bugs) ou solicitações de recursos (features) muito bem documentados.
Dicas para Issues:
- Use H2 para descrever o problema.
- Use Blocos de Código para mostrar o erro ou o comportamento esperado.
- Use Checklists para listar os passos para reproduzir o bug.
2. Menções e Referências 👤
Você pode interagir com outros desenvolvedores e outras partes do projeto usando sintaxes especiais:
- @usuário: Menciona alguém diretamente.
- #número: Faz um link automático para uma Issue ou Pull Request (ex: #15).
- SHA: Colar o hash de um commit cria um link automático para ele.
3. Badges Profissionais 🎖️
Os badges são imagens dinâmicas que mostram o estado do seu projeto. O site mais famoso para isso é o Shields.io.
Exemplos comuns:
4. Markdown no fluxo de CI/CD (Mermaid) 🧜♀️
mermaid
graph LR
C[Push Code] --> G[GitHub Actions]
G --> B[Build Test]
B -->|Sucesso| BDG[Update Badge Green]
B -->|Falha| BDR[Update Badge Red]
BDG --> R[README.md]
BDR --> R
5. Simulação de Comentário em PR 🐚
$ echo "Review concluído!" > comentario.md
$ echo "Solicito os seguintes ajustes:" >> comentario.md
$ echo "- [ ] Corrigir identação na linha 42" >> comentario.md
$ cat comentario.md
Review concluído!
Solicito os seguintes ajustes:
- [ ] Corrigir identação na linha 42
6. Mini-Projeto: Criando um Template de Issue 🏗️
Crie um arquivo bug_report.md que sirva como modelo para relatar erros em um projeto:
1. Um título claro (H1).
2. Seção "Comportamento Atual" e "Comportamento Esperado" (H2).
3. Uma checklist "Passos para Reproduzir".
4. Um bloco de código para "Logs de Erro".
5. Um badge fictício de "Prioridade: Crítica".
7. Exercícios de Fixação 🧠
- O que acontece quando você escreve
Fixes #10na descrição de um Pull Request? - Como você pode mencionar um colega de equipe em um comentário de código no GitHub?
- Qual a vantagem de usar Badges em vez de apenas escrever o status do projeto como texto?
Próxima Aula: Vamos mergulhar no Markdown Estendido! ➕
Aula 07 - Markdown Estendido ➕
Objetivo
Objetivo: Conhecer as extensões poderosas do Markdown, incluindo o uso de HTML embutido para controle visual fino, o uso avançado de Emojis e a criação de notas de rodapé profissionais para documentos técnicos e acadêmicos.
1. HTML dentro do Markdown 🌐
O Markdown é projetado para ser compatível com HTML. Se a sintaxe básica não for suficiente para o que você precisa (ex: uma cor específica ou um layout complexo), você pode usar tags HTML diretamente.
Exemplo de Cor e Centralização:
Este texto é vermelho e centralizado via HTML!
Warning
Use HTML apenas quando necessário. O excesso de HTML torna o arquivo .md difícil de ler em sua forma bruta.
2. Emojis Avançados 😎
Além de copiar e colar emojis, muitas plataformas suportam os "shortcodes" (nomes entre dois pontos).
:rocket:-> 🚀:bulb:-> 💡:white_check_mark:-> ✅
Recomendação de Uso:
Use emojis para criar uma hierarquia visual ou para indicar o tipo de conteúdo (ex: ⚠️ para alertas).
3. Notas de Rodapé (Footnotes) 📝
Essenciais para referências bibliográficas ou explicações técnicas que não devem interromper o fluxo da leitura principal.
Sintaxe:
Aqui está uma afirmação importante1.
4. Visualização de Processamento (Mermaid) 🧜♀️
mermaid
graph TD
MD[Markdown Puro] --> Parser[Processador de Markdown]
HTML[HTML Raw] --> Parser
EMO[Shortcodes Emoji] --> Parser
Parser --> FINAL[Documento Renderizado]
5. Simulação de Uso de HTML 🐚
$ echo "<u>Texto Sublinhado</u>" > teste.md
$ echo "<sub>Subscrito</sub>" >> teste.md
$ cat teste.md
<u>Texto Sublinhado</u>
<sub>Subscrito</sub>
6. Mini-Projeto: Documento Acadêmico Estilizado 🏗️
Crie um arquivo academic.md simulando um pequeno artigo:
1. Um título centralizado usando <h1 align="center">.
2. Um termo técnico que use uma nota de rodapé para sua definição.
3. Um aviso importante usando um emoji :warning:.
4. Uma lista de referências no final do documento.
7. Exercícios de Fixação 🧠
- Qual o risco de usar muito código HTML dentro de um arquivo Markdown?
- Como se cria uma nota de rodapé e como se faz a referência a ela no meio do texto?
- O código
<br>serve para quê no Markdown?
Próxima Aula: Vamos consolidar tudo no Projeto Intermediário! 🏗️
-
Esta é a explicação detalhada que aparecerá no rodapé da página. ↩
Aula 08 - Projeto Intermediário 🏗️
Objetivo
Objetivo: Consolidar todos os conhecimentos adquiridos nos Módulos 1 e 2 (Sintaxe Básica, Organização, Programação, Tabelas e GitHub) através da criação de uma documentação técnica completa para um pequeno sistema de software.
1. O Desafio do Projeto 🏆
Nesta aula prática, você não aprenderá comandos novos, mas sim como aplicar tudo o que vimos para criar um produto final profissional. Você deverá documentar um sistema fictício chamado "TaskMaster CLI" (ou um projeto de sua escolha).
O que deve ser documentado?
- README.md: Visão geral e badges.
- Guia de Instalação: Comandos de terminal e pré-requisitos.
- Referência Técnica: Tabelas de parâmetros e exemplos de código.
- Status do Projeto: Checklists de funcionalidades.
2. Checklist de Qualidade ✅
Antes de considerar sua documentação pronta, verifique se ela atende aos seguintes critérios: - [ ] Possui uma hierarquia de títulos clara. - [ ] Utiliza negrito e itálico para destacar termos importantes. - [ ] Contém pelo menos uma tabela técnica. - [ ] Apresenta blocos de código com destaque de sintaxe correto. - [ ] Utiliza links relativos para navegar entre os arquivos. - [ ] Possui pelo menos um diagrama Mermaid de fluxo.
3. Estrutura Recomendada (Mermaid) 🧜♀️
mermaid
graph TD
ROOT[README.md] --> DOCS[Pasta docs/]
DOCS --> INTRO[intro.md]
DOCS --> SETUP[setup.md]
DOCS --> USAGE[uso.md]
INTRO -->|Links| SETUP
SETUP -->|Links| USAGE
USAGE -->|Links| ROOT
4. Dicas de Ouro para sua Documentação 💡
- Consistência: Use o mesmo estilo de títulos em todos os arquivos.
- Escaneabilidade: Parágrafos curtos e muitas listas.
- Visual: Use emojis para sinalizar seções de "Dica" ou "Aviso".
- Badges: Utilize o Seals.io para mostrar que sua documentação está "100% Completa".
5. Simulação de Finalização de Versão 🐚
$ git add .
$ git commit -m "docs: finaliza projeto intermediário"
$ git tag -a v0.5 -m "Versão intermediária da documentação"
$ git push origin main --tags
6. Mini-Projeto: O Projeto Intermediário 🚀
Esta aula É o mini-projeto. Siga os requisitos detalhados na seção Projeto 08.
7. Exercícios de Reaproveitamento 🧠
- Revise seu arquivo
aula-01.md. O que você mudaria nele usando o que aprendeu sobre Tabelas e Badges na Aula 06? - Como a organização de arquivos em pastas (Aula 03) ajudou você a não se perder neste projeto intermediário?
Explicação: Na próxima aula, iniciaremos o Módulo 3 focando em Diagramas com Mermaid! 🧜♀️
Módulo 3: Visualização
Aula 09 - Mermaid na Prática: Fluxogramas 🧜♀️
Objetivo
Objetivo: Dominar a criação de fluxogramas (flowcharts) usando a sintaxe Mermaid diretamente no Markdown, aprendendo a representar decisões, processos e conexões lógicas de forma visual.
1. O que é Mermaid? 🧜♀️
Mermaid é uma ferramenta baseada em JavaScript que renderiza definições de texto inspiradas no Markdown para criar diagramas complexos. Ela permite que sua documentação tenha gráficos que acompanham as mudanças do texto, sem precisar de editores de imagem externos.
2. Estrutura Básica de um Fluxograma 🧱
Para iniciar um diagrama Mermaid, use o bloco de código com o identificador mermaid. O fluxograma começa com graph ou flowchart, seguido pela direção do fluxo.
Direções Comuns:
- LR (Left to Right): Da esquerda para a direita.
- TD ou TB (Top Down / Top to Bottom): De cima para baixo.
- RL (Right to Left): Da direita para a esquerda.
- BT (Bottom to Top): De baixo para cima.
3. Tipos de Nós (Nodes) 📦
O formato do nó define seu significado lógico:
ID[Texto]: Retângulo (Processo).ID(Texto): Cantos arredondados (Início/Fim).ID{Texto}: Losango (Decisão).ID((Texto)): Círculo.
4. Conexões e Setas ➡️
A --> B: Seta simples.A --- B: Linha sem seta.A -- Texto --> B: Seta com descrição.A ==> B: Seta espessa.
Exemplo de Fluxo de Decisão:
mermaid
graph TD
A(Início) --> B{Tem café?}
B -- Sim --> C[Beber café]
B -- Não --> D[Fazer café]
C --> E(Trabalhar)
D --> E
5. Simulação de Criação de Diagrama 🐚
$ echo "graph LR" > fluxo.mermaid
$ echo " A --> B" >> fluxo.mermaid
$ cat fluxo.mermaid
graph LR
A --> B
6. Mini-Projeto: Fluxograma de Sistema 🏗️
Crie um diagrama de fluxo que represente o processo de "Login de Usuário":
1. Comece com um nó arredondado "Início".
2. Siga para um nó de processo "Digitar Credenciais".
3. Adicione um nó de decisão "Senha Correta?".
4. Conecte o "Sim" ao "Acesso Autorizado" e o "Não" de volta ao "Digitar Credenciais".
5. Use a direção TD (Top Down).
7. Exercícios de Fixação 🧠
- O que significa a sigla
LRna definição de um gráfico Mermaid? - Como representar um nó de decisão (losango) na sintaxe Mermaid?
- Qual a vantagem de escrever diagramas em texto (código) em vez de usar uma imagem
.png?
Próxima Aula: Vamos explorar o Mermaid Avançado com diagramas de sequência! ⚡
Aula 10 - Mermaid Avançado ⚡
Objetivo
Objetivo: Expandir o uso do Mermaid para diagramas de sequência (interação entre sistemas), gráficos de Gantt (gestão de tempo) e Mapas Mentais, além de aprender a estilizar diagramas com CSS.
1. Diagramas de Sequência 🛡️
Representam como diferentes partes de um sistema (atores e participantes) interagem ao longo do tempo através de mensagens.
Sintaxe Básica:
participant: Define um componente.actor: Define um usuário ou entidade externa.A ->> B: Mensagem síncrona.A -->> B: Resposta.
```mermaid sequenceDiagram actor Usuario participant App participant DB
Usuario->>App: Solicita Login
App->>DB: Verifica Credenciais
DB-->>App: OK
App-->>Usuario: Acesso Liberado
```
2. Gráficos de Gantt 📅
Excelentes para cronogramas de projetos dentro da documentação.
mermaid
gantt
title Cronograma de Estudo
dateFormat YYYY-MM-DD
section Basico
Aula 01-04 :a1, 2024-03-01, 7d
section Avancado
Aula 09-12 :a2, after a1, 5d
3. Mapas Mentais (Mindmaps) 🧠
Uma forma rápida de organizar ideias e categorias.
mermaid
mindmap
root((Markdown))
Sintaxe
Basica
Estendida
Ferramentas
VS Code
MkDocs
Diagramas
Mermaid
PlantUML
4. Estilização de Nós (Styling) 💅
Você pode aplicar cores, bordas e estilos específicos aos nós usando o comando style.
Exemplo:
style A fill:#f9f,stroke:#333,stroke-width:4px
5. Simulação de Sequência Técnica 🐚
$ echo "sequenceDiagram" > seq.mermaid
$ echo " Alice ->> Bob: Hello" >> seq.mermaid
$ cat seq.mermaid
sequenceDiagram
Alice ->> Bob: Hello
6. Mini-Projeto: Mapa Mental de Carreira 🏗️
Crie um arquivo carreira.md contendo um mapa mental Mermaid:
1. O centro (Root) deve ser "Tecnologia".
2. Crie ramificações para "Frontend", "Backend" e "Soft Skills".
3. Dentro de cada ramificação, adicione 2 itens (ex: Frontend -> React, Vue).
7. Exercícios de Fixação 🧠
- Qual a diferença entre
participanteactorem um diagrama de sequência? - Para que serve o comando
dateFormatem um gráfico de Gantt? - Como você mudaria a cor de fundo de um nó chamado
Bpara amarelo (#ffff00)?
Próxima Aula: Vamos sair dos gráficos e entrar na matemática com MathJax! 🔢
Aula 11 - MathJax: Fórmulas Médicas e Científicas 🔢
Objetivo
Objetivo: Aprender a representar fórmulas matemáticas, químicas e médicas complexas usando a sintaxe MathJax (LaTeX) dentro do Markdown, essencial para documentação científica e técnica.
1. O que é MathJax? 🔢
O MathJax é um motor de exibição JavaScript para matemática que funciona em todos os navegadores. Ele permite que você escreva equações usando a sintaxe LaTeX, que é o padrão da indústria acadêmica.
2. Sintaxe Básica ✍️
Existem duas formas de exibir fórmulas:
- Inline (em linha): Use o cifrão simples
$. Exemplo: \(E = mc^2\) - Display (bloco): Use o cifrão duplo
$$. Exemplo: $$ x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a} $$
3. Comandos Comuns do LaTeX 🛠️
- Frações:
\frac{numerador}{denominador}-> \(\frac{1}{2}\) - Potência:
x^2-> \(x^2\) - Subscrito:
H_{2}O-> \(H_{2}O\) - Raiz Quadrada:
\sqrt{x}-> \(\sqrt{x}\) - Somas e Limites:
\sum,\lim
4. Aplicações Médicas e Científicas 🏥
O Markdown com MathJax é amplamente usado para documentar: - Fórmulas de cálculo de dosagem de medicamentos. - Representações de reações químicas. - Equações físicas em artigos técnicos.
Exemplo de Reação Química:
5. Visualização de Fluxo (Mermaid) 🧜♀️
mermaid
graph LR
MD[Markdown + LaTeX] --> MJ[Motor MathJax]
MJ --> WEB[Equaçao Elegante no Navegador]
6. Simulação de Cálculo de IMC 🐚
7. Mini-Projeto: Folha de Fórmulas 🏗️
Crie um arquivo formulas.md que contenha:
1. Um título H1 "Manual de Fórmulas Científicas".
2. Uma seção para Física com a fórmula da Força (\(F = m \cdot a\)).
3. Uma seção para Química com a fórmula da Glicose (\(C_6H_{12}O_6\)).
4. Uma seção para Matemática com a área do círculo (\(A = \pi r^2\)).
5. Use blocos de destaque !!! info para explicar cada fórmula.
8. Exercícios de Fixação 🧠
- Qual a diferença visual entre usar
$e$$no MathJax? - Como se escreve a fração "três quartos" em sintaxe LaTeX?
- O MathJax é habilitado por padrão em todos os leitores de Markdown? (Dica: Pense no MkDocs).
Próxima Aula: Vamos aplicar isso tudo no Markdown Acadêmico! 🎓
Aula 12 - Markdown Acadêmico 🎓
Objetivo
Objetivo: Aprender a estruturar documentos acadêmicos e relatórios técnicos longos em Markdown, utilizando recursos como sumários automáticos, citações bibliográficas e organização seguindo padrões (como ABNT simplificada).
1. Estrutura de Documentos Longos 📚
Para documentos extensos (TCCs, Artigos, Relatórios), a hierarquia de títulos é sua melhor amiga.
- H1: Título do Trabalho.
- H2: Capítulos/Seções Principais.
- H3: Subseções.
Sumário Automático (TOC)
No MkDocs, o sumário é gerado automaticamente na barra lateral. Mas você pode adicionar um [TOC] se o plugin estiver habilitado.
2. Citações e Referências 🏷️
Documentos acadêmicos exigem a citação de fontes.
Bloco de Citação (Blockquote)
Use o sinal de maior que > para citações diretas.
"A ciência é o que sabemos; a filosofia é o que não sabemos." — Bertrand Russell
3. Notas de Rodapé Revisitadas 📝
Conforme vimos na Aula 07, as notas de rodapé são ideais para citações bibliográficas1.
4. Tabelas de Dados Pesquisados 📊
Use tabelas para comparar resultados de experimentos ou estudos de caso.
| Variável | Grupo Controle | Grupo Experimental |
|---|---|---|
| Eficácia | 45% | 89% |
5. Visualização de Estrutura de Artigo (Mermaid) 🧜♀️
mermaid
graph TD
T[Título] --> R[Resumo]
R --> I[Introduçao]
I --> D[Desenvolvimento]
D --> C[Conclusao]
C --> B[Referências]
6. Simulação de Exportação Acadêmica 🐚
Muitos acadêmicos usam o Pandoc para converter Markdown em PDF ou Word com normas da ABNT.
7. Mini-Projeto: Artigo Científico Curto 🏗️
Crie um arquivo artigo_exemplo.md contendo:
1. Título e Autor.
2. Seção "Resumo" com uma citação direta (>).
3. Corpo do texto com pelo menos duas notas de rodapé bibliográficas.
4. Uma tabela comparativa de dados.
5. Uma fórmula matemática (Aula 11) que fundamente seu estudo.
8. Exercícios de Fixação 🧠
- Como se diferencia uma citação direta de um texto comum no Markdown?
- O que o Pandoc faz com o seu arquivo Markdown?
- Por que manter uma hierarquia rigorosa de H1, H2 e H3 é vital em documentos longos?
Próxima Aula: Iniciamos o Módulo final com Apresentações Dinâmicas (Reveal.js)! 🎭
-
SOBRENOME, Nome. Título do Livro: subtítulo. Local: Editora, Ano. ↩
Módulo 4: Entrega
Aula 13 - Apresentações com Reveal.js 🎭
Objetivo
Objetivo: Aprender a transformar arquivos Markdown em apresentações de slides dinâmicas e interativas utilizando o Reveal.js, explorando transições, fragmentos e temas.
1. O que é Reveal.js? 🎭
O Reveal.js é um framework para criar apresentações HTML elegantes. Diferente do PowerPoint, as apresentações do Reveal.js são baseadas em padrões web, o que as torna fáceis de compartilhar e versionar.
2. Estrutura de Slides no Markdown 🧱
A separação entre um slide e outro é feita por três hifens ---.
Exemplo:
3. Elementos Fragmentados ✨
Fragmentos são usados para exibir elementos de forma sequencial em um mesmo slide (o famoso "um clique por item").
Sintaxe (MkDocs + Plugin Reveal):
Use { .fragment } logo após o item para que ele apareça com um comando do apresentador.
- Item 1 { .fragment }
- Item 2 { .fragment }
- Item 3 { .fragment }
4. Transições e Temas 🎨
Você pode configurar o comportamento global da apresentação (como o efeito de transição Cubo, Slide ou Fade) e o tema visual (Black, White, League, Sky) através de metadados no topo do arquivo ou no arquivo de configuração do plugin.
5. Visualização de Fluxo de Slide (Mermaid) 🧜♀️
mermaid
graph LR
S1[Capa] --> S2[Introduçao]
S2 --> S3[Desenvolvimento]
S3 --> S4[Conclusao]
S4 --> F[Fim]
6. Simulação de Criação de Apresentação 🐚
$ echo "# Bem-vindo 🚀" > slides.md
$ echo "---" >> slides.md
$ echo "## Agenda" >> slides.md
$ echo "- Introdução { .fragment }" >> slides.md
$ cat slides.md
7. Mini-Projeto: Minha Primeira Apresentação 🎤
Crie um arquivo apresentacao_teste.md contendo:
1. Um slide de título com seu nome.
2. Um slide com uma lista de 3 "Habilidades" usando o recurso de fragmentos ({ .fragment }).
3. Um slide contendo uma imagem centralizada (Aula 07).
4. Unm slide final de "Dúvidas?".
8. Exercícios de Fixação 🧠
- Qual o símbolo usado para separar dois slides no Markdown do Reveal.js?
- Para que serve o recurso de "Fragmentos"?
- Qual a vantagem de fazer slides em Markdown em vez de usar o Google Slides ou PowerPoint?
Próxima Aula: Vamos mergulhar no Termynal.js Interativo! 🐚
Aula 14 - Termynal.js Interativo 🐚
Objetivo
Objetivo: Aprender a criar simulações de linha de comando animadas e realistas diretamente no seu site MkDocs utilizando a sintaxe Termynal.js, essencial para tutoriais e documentação de CLI (Command Line Interface).
1. O que é Termynal.js? 🐚
Termynal.js é uma biblioteca minimalista que simula a escrita humana em um terminal de computador. Em vez de apenas colar um bloco de código estático, você pode mostrar ao usuário o processo de digitar um comando e ver a resposta do sistema.
2. Sintaxe Básica 🧱
Para criar uma simulação, usamos o bloco de código com o identificador termynal. Os símbolos indicam o comportamento da linha:
$: Indica um comando que será "digitado" (input).- (Sem símbolo): Indica a saída do sistema (output), que aparece instantaneamente.
>: Pode indicar um prompt contínuo ou um comentário.
Exemplo:
3. Customizando o Tempo e Atrasos ⏱️
Você pode controlar a velocidade da animação usando comentários especiais ou atributos (se o plugin permitir). No nosso ambiente MkDocs, o foco é na estrutura:
- Comandos curtos aparecem mais rápido. { .fragment }
- Blocos de saída longos aparecem de uma só vez para não cansar o leitor. { .fragment }
4. Por que usar Simulações Animadas? 🚀
- Engajamento: O movimento atrai a atenção. { .fragment }
- Didática: O usuário entende o que ele deve digitar e o que o computador deve responder. { .fragment }
- Profissionalismo: Dá um ar de "modernidade" à sua documentação. { .fragment }
5. Visualização de Renderização (Mermaid) 🧜♀️
mermaid
graph TD
A[Bloco termynal] --> B{Script JS}
B --> C[Simula Digitaçao]
C --> D[Exibe Output]
D --> E[Terminal Finalizado]
6. Mini-Projeto: Guia de Instalação Animado 🏗️
Crie um arquivo tutorial_cli.md contendo:
1. Um título H1 "Manual do Desenvolvedor Moderno".
2. Uma breve explicação sobre como instalar uma ferramenta fictícia chamada SuperTools.
3. Um bloco termynal que simule:
- A criação de uma pasta (mkdir).
- A instalação via npm (npm install supertools).
- A execução da ferramenta (supertool --version).
- A saída mostrando a versão v1.0.0.
7. Exercícios de Fixação 🧠
- Qual o prefixo usado para indicar que um texto deve ser "digitado" no Termynal.js?
- Como representar a resposta do sistema (saída) em um bloco de terminal animado?
- Qual a principal vantagem de uma animação de terminal em relação a um print do console?
Próxima Aula: O grande Projeto Integrador Final! 🚀
Aula 15 - Projeto Integrador Final 🚀
Objetivo
Objetivo: Consolidar todos os conhecimentos técnicos e visuais adquiridos ao longo do curso (Módulos 1 a 4) através da criação de um Repositório de Documentação Profissional completo, pronto para ser publicado no GitHub Pages.
1. O Grande Desafio 🏆
Chegou a hora de unir todas as peças do quebra-cabeça. Não aprenderemos comandos novos hoje; em vez disso, vamos orquestrar tudo o que já sabemos para criar um produto final que servirá como seu portfólio de Documentação Técnica.
2. Requisitos Mandatórios do Projeto 🧱
Seu repositório final deve conter:
- Módulo 1: Estrutura organizada de pastas, títulos H1/H2 e listas.
- Módulo 2: Tabelas técnicas de requisitos e checklists de progresso.
- Módulo 3: Pelo menos dois diagramas Mermaid (Fluxo e Sequência) e uma fórmula MathJax.
- Módulo 4: Um deck de slides (
.md) funcional e uma simulaçãotermynal.
3. Checklist de Excelência ✅
- Todos os links internos estão funcionando?
- As imagens possuem texto alternativo (
alt text)? - O arquivo
index.md(página inicial) é convidativo? - O código possui destaque de sintaxe correto?
- O repositório possui uma licença aberta (MIT, por exemplo)?
4. Estrutura do Ecossistema (Mermaid) 🧜♀️
mermaid
graph TD
REPOS[Seu Repositório] --> DOCS[Pasta docs/]
DOCS --> INDEX[index.md - Landing Page]
DOCS --> TECH[tech_specs.md - Tabelas/Fórmulas]
DOCS --> DIAG[diagrams.md - Mermaid]
DOCS --> SLIDE[slides.md - Reveal.js]
REPOS --> MKD[mkdocs.yml - Configuraçao]
5. Simulação de Entrega Profissional 🐚
$ git add .
$ git commit -m "feat: finaliza projeto integrador v1.0"
$ git push origin main
$ mkdocs gh-deploy
$ echo "Projeto no ar!"
6. Mini-Projeto: O Integrador 🎨
Esta aula É o mini-projeto final. Utilize o que você desenvolveu nas aulas 08 e 12 como base para expandir o seu repositório. O objetivo é que qualquer pessoa que veja o seu site entenda imediatamente que você domina o Markdown Moderno.
7. Exercícios de Auto-Avaliação 🧠
- Qual foi o recurso de Markdown que você teve mais facilidade em aprender?
- Qual recurso (Mermaid, MathJax, Reveal.js) você considera o mais poderoso para o seu futuro profissional?
- Se você tivesse que explicar para um colega por que usar MkDocs em vez de um documento Word, o que você diria?
Próxima Aula: Finalização e Apresentação! 🎓
Aula 16 - Finalização e Próximos Passos 🎓
Objetivo
Objetivo: Realizar a entrega e apresentação final do projeto integrador, revisar a jornada do curso e discutir os próximos passos para continuar evoluindo no ecossistema de Documentação como Código.
1. A Jornada até Aqui 🏔️
Parabéns! Você percorreu um caminho incrível, saindo do básico # Olá Mundo até a criação de um ecossistema completo com diagramas, fórmulas, slides e terminais animados.
- Módulo 1: Fundamentos e Organização.
- Módulo 2: Prática Profissional e GitHub.
- Módulo 3: Diagramação e Ciência.
- Módulo 4: Interatividade e Entrega.
2. Apresentação do Projeto Final 🎤
O momento de compartilhar o seu trabalho com o mundo (ou com a sua turma). Lembre-se de utilizar os slides criados na Aula 15 para guiar sua fala.
Pontos Chave para sua Apresentação:
- Qual problema sua documentação resolve?
- Quais foram os maiores desafios técnicos?
- Qual o recurso visual do Markdown que você mais se orgulha de ter usado?
3. Além do Markdown: Próximos Passos 🚀
O conhecimento não para aqui. O Markdown é a porta de entrada para ferramentas ainda mais poderosas:
- Pandoc: O canivete suíço para converter seu Markdown em QUALQUER formato. { .fragment }
- Asciidoc: Uma alternativa ao Markdown para livros e documentações complexas de engenharia. { .fragment }
- Static Site Generators (SSG): Além do MkDocs, explore Hugo, Jekyll ou Docusaurus. { .fragment }
- CSS Avançado: Aprenda a criar seus próprios temas para o MkDocs e Reveal.js. { .fragment }
4. Visualização do Futuro (Mermaid) 🧜♀️
mermaid
graph TD
NOW[Markdown Master] --> JOB[Documentaçao Técnica]
NOW --> DEV[Desenvolvedor FullStack]
NOW --> SCI[Pesquisador Científico]
JOB --> EXP[Tech Writer]
DEV --> EXP
SCI --> EXP[Especialista em Comunicaçao]
5. Simulação de Encerramento 🐚
$ echo "Curso Concluído com Sucesso!"
$ git tag -a v1.0.final -m "Certificado de Markdown"
$ git push origin --tags
$ exit
6. Mini-Projeto: O Meu Legado 🏗️
Revise seu repositório uma última vez. Adicione um arquivo meta-documentação (pode ser o README.md principal) que conte a história de como esse projeto evoluiu ao longo das 16 aulas. Esse será o seu "legado" deste curso.
7. Exercícios de Reflexão Final 🧠
- Olhando para o seu primeiro arquivo
aula-01.mde para o seuprojeto15.md, qual a maior diferença que você nota? - Como você pretende aplicar o Markdown no seu dia a dia de trabalho ou estudos a partir de amanhã?
- Qual nota de 0 a 10 você daria para a qualidade visual das documentações que você é capaz de criar agora?
Palavras Finais 🙏
"A documentação é a ponte entre a ideia e a execução. Obrigado por caminhar sobre essa ponte conosco."
Parabéns, Markdown Master! 🎓🚀
Materiais
Materiais Complementares 📚
Bem-vindo à seção de materiais complementares do curso de Markdown Moderno para Computação. Aqui você encontra os atalhos para os principais recursos do curso.
-
Slides --- Acesse os slides interativos de cada uma das 16 aulas do curso.
-
Exercícios --- Pratique o que aprendeu com 5 exercícios (Básico até Desafio) por aula.
-
Quizzes --- Valide seus conhecimentos com 10 questões rápidas (com explicações) por aula.
-
Projetos --- Desenvolva projetos práticos que compõem o seu portfólio de documentação.
-
Guia de Markdown --- Consulte as lições teóricas sempre que precisar relembrar uma sintaxe.
Slides
Slides das Aulas 🎭
Acesse as apresentações interativas de cada aula diretamente no seu navegador.
Módulo 1: Fundamentos e Escrita Técnica
- Slide 01: Introdução ao Markdown
- Slide 02: Sintaxe Básica
- Slide 03: Organização e Boas Práticas
- Slide 04: Markdown para Programação
Módulo 2: Estrutura e Dados
- Slide 05: Tabelas e Estrutura Técnica
- Slide 06: Markdown + GitHub
- Slide 07: Markdown Estendido
- Slide 08: Projeto Intermediário
Módulo 3: Visualização e Ciência
- Slide 09: Diagramas com Mermaid
- Slide 10: Diagramas Avançados
- Slide 11: Fórmulas Matemáticas com MathJax
- Slide 12: Markdown para Conteúdo Acadêmico
Módulo 4: Automação e Entrega
- Slide 13: Apresentações com Reveal.js
- Slide 14: Simulação de Terminal com Termynal.js
- Slide 15: Projeto Integrador
- Slide 16: Apresentação Final
Exercícios
Listas de Exercícios 🏋️
Pratique o que aprendeu com desafios graduais para cada aula. Cada arquivo contém 5 exercícios (2 Básicos, 2 Intermediários e 1 Desafio).
Módulo 1: Fundamentos e Escrita Técnica
- Ex 01 - Introdução ao Markdown
- Ex 02 - Sintaxe Básica
- Ex 03 - Organização e Boas Práticas
- Ex 04 - Markdown para Programação
Módulo 2: Estrutura e Dados
- Ex 05 - Tabelas e Estrutura Técnica
- Ex 06 - Markdown + GitHub
- Ex 07 - Markdown Estendido
- Ex 08 - Projeto Intermediário
Módulo 3: Visualização e Ciência
- Ex 09 - Diagramas com Mermaid
- Ex 10 - Diagramas Avançados
- Ex 11 - Fórmulas Matemáticas com MathJax
- Ex 12 - Markdown para Conteúdo Acadêmico
Módulo 4: Automação e Entrega
Exercícios - Aula 01: Introdução ao Markdown 📝
🟢 Básico
- Definição: Explique, com suas palavras, o que é Markdown e por que ele é considerado uma linguagem de "marcação leve".
- Extensões: Qual é a extensão de arquivo correta para um documento Markdown? (Ex:
.txt,.doc,.md).
🟡 Intermediário
- Vantagens: Liste 3 vantagens de utilizar Markdown em vez de um editor de texto convencional (como Microsoft Word) para documentar um projeto de software.
- Ferramentas: Pesquise e nomeie um editor de Markdown (online ou desktop) que você considere interessante e explique uma funcionalidade legal dele.
🔴 Desafio
- Instalação e Setup:
- Instale o VS Code (se ainda não tiver).
- Instale a extensão "Markdown All in One".
- Crie um arquivo chamado
aula01.mde utilize o comandoCtrl+Shift+Vpara abrir o preview. - Escreva uma pequena biografia sua usando pelo menos 3 níveis de títulos.
Exercício 02
🔴 Desafio
- A Mistura Perfeita:
- Crie um arquivo chamado
exercicio02.md. - Adicione um título H1.
- Crie uma tabela simples (3x2) comparando "Item" e "Preço".
- Adicione uma nota de rodapé ou um texto em negrito e itálico combinados.
- Insira uma imagem que também seja um link.
- Crie um arquivo chamado
Exercícios - Aula 03: Organização e Boas Práticas 📂
🟢 Básico
- Links Relativos: Você tem um arquivo na pasta raiz chamado
README.mde um na pastadocs/chamadoprojeto.md. Como seria o link dentro doREADME.mdpara o arquivoprojeto.md? - Hierarquia: Por que não devemos usar múltiplos títulos de nível 1 (#) em um mesmo documento Markdown?
🟡 Intermediário
- Checklists: No Markdown do GitHub, usamos
[ ]e[x]para tarefas. Crie uma lista de tarefas para a organização da sua documentação com pelo menos 3 itens, marcando o primeiro como concluído. - Ancoragem: Explique como você criaria um link no topo de um documento que levasse o usuário diretamente para uma seção lá no final chamada "Contato".
🔴 Desafio
- A Mágica dos Badges:
- Pesquise o site Shields.io.
- Crie um badge personalizado para o seu projeto com o texto "Status: Em Desenvolvimento" e a cor laranja.
- Insira este badge no seu arquivo
README.mdusando a sintaxe de imagem. - Crie uma estrutura de 3 arquivos interligados:
index.md->recursos.md->faq.md. Todos devem ter um link de "Voltar" para o arquivo anterior.
Exercícios - Aula 04: Markdown para Programação 💻
🟢 Básico
- Inline vs Bloco: Escreva um parágrafo que mencione a variável
contadorusando código inline, e logo abaixo mostre um bloco de código Python que incremente esta variável. - Destaque de Sintaxe: Crie três blocos de código vazios apenas indicando as linguagens:
javascript,htmlecss.
🟡 Intermediário
- Documentação de API: Crie uma tabela Markdown que descreva os parâmetros de uma função fictícia
enviar_email(destinatario, assunto, corpo). A tabela deve ter colunas para "Parâmetro", "Tipo" e "Descrição". - Comentários de Código: Como você pode adicionar um comentário dentro de um bloco de código Python no Markdown sem que ele pareça texto comum do documento?
🔴 Desafio
- Simulação Técnica:
- Crie um arquivo chamado
exercicio04.md. - Desenvolva uma pequena documentação para um script de backup.
- Use um bloco
termynalpara mostrar o comando de execução (ex:python backup.py). - Use um bloco de código com destaque de sintaxe para mostrar o conteúdo do script
backup.py. - Adicione uma tabela de "Códigos de Saída" (Ex: 0 = Sucesso, 1 = Erro).
- Crie um arquivo chamado
Exercícios - Aula 05: Tabelas e Estrutura Técnica 📊
🟢 Básico
- Alinhamento: Como centralizar o conteúdo de uma coluna em uma tabela Markdown?
- Checklists: Qual a sintaxe para criar uma caixa de seleção marcada e uma desmarcada?
🟡 Intermediário
- Tabela de Requisitos: Crie uma pequena tabela com as colunas "ID", "Descrição" e "Prioridade" (Centralizada).
- Markdown em Tabelas: É possível utilizar negrito e links dentro de uma célula de tabela? Demonstre com um exemplo.
🔴 Desafio
- Dashboard de Projeto: Crie um arquivo
exercicio05.mdcontendo uma tabela de cronograma e uma checklist de tarefas pendentes para um projeto fictício.
Exercícios - Aula 06: Markdown + GitHub 🐙
🟢 Básico
- Menções: Como você menciona o usuário "ricardotecpro" em um comentário no GitHub?
- Issues: Qual a sintaxe para criar um link automático para a Issue de número 123 dentro de um repositório?
🟡 Intermediário
- Badges:
- Vá ao site Shields.io.
- Crie um badge de "Plataforma: Android" com a cor azul.
- Escreva aqui a linha de código Markdown necessária para exibir este badge.
- Links de Commit: O que o GitHub faz automaticamente quando você cola um Hash de Commit (ex:
a1b2c3d) em uma discussão Markdown?
🔴 Desafio
- Template de Pull Request:
- Dica: Use
!!! infopara dar uma instrução ao revisor do PR.
- Dica: Use
Exercícios - Aula 07: Markdown Estendido ➕
🟢 Básico
- HTML Simples: Use a tag HTML
<u>para sublinhar a palavra "Importante" em uma frase qualquer. - Emojis por Nome: Escreva uma frase motivacional usando os shortcodes
:fire:,:muscle:e:rocket:.
🟡 Intermediário
- Nota de Rodapé: Escreva um parágrafo sobre o criador do Markdown e use uma nota de rodapé para citar o ano em que a linguagem foi lançada.
- Alinhamento HTML: Use o atributo
align="right"em uma tag<p>para alinhar um parágrafo totalmente à direita, simulando uma assinatura de documento.
🔴 Desafio
- Documento Técnico Avançado:
- Crie um arquivo
exercicio07.md. - Use HTML para criar um título colorido (ex: azul marinho).
- Crie um glossário de termos no final do documento usando notas de rodapé (pelo menos 3 termos).
- Insira uma imagem centralizada usando HTML (
<img src="..." align="center">ou dentro de um<p align="center">). - Adicione um texto subscrito (
<sub>) e um sobrescrito (<sup>) para representar uma fórmula química ou matemática simples (ex: H₂O).
- Crie um arquivo
Exercícios - Aula 08: Projeto Intermediário 🏗️
🟢 Básico
- Auto-Avaliação: Liste 3 recursos das Aulas 05 a 07 que você considera mais úteis para a documentação de um projeto real.
- Higiene de Código: No seu projeto de hoje, verifique se todos os blocos de código têm a indicação da linguagem (ex:
python,json). Liste aqui quais você usou.
🟡 Intermediário
- Revisão de Links: Teste todos os links do seu projeto intermediário. Algum quebrou? Por que é importante usar links relativos (
../) em vez de links absolutos (C:\Users\...)? - Emoji Check: Adicione um emoji de status (ex: ✅ ou 🚧) ao lado de cada requisito na sua tabela de funcionalidades do projeto de hoje.
🔴 Desafio
- O Toque Final:
- No seu arquivo
README.mddo projeto de hoje, adicione uma seção de "Créditos" ou "Autor" usando HTML para centralizar seu nome e dar uma cor especial a ele. - Crie uma nota de rodapé no
README.mdque leve o usuário para a licença do projeto (pode ser um link fictício). - Adicione um badge do Shields.io que mostre a porcentagem de conclusão do projeto (ex:
Status-80%25-orange).
- No seu arquivo
Exercícios - Aula 09: Mermaid na Prática: Fluxogramas 🧜♀️
🟢 Básico
- Direção do Fluxo: Crie um pequeno diagrama Mermaid que aponte de A para B, usando a direção
LR. - Formas de Nós: Represente os seguintes itens com a sintaxe Mermaid:
- Um processo (retângulo) chamado "Compilar".
- Uma decisão (losango) chamada "Erro?".
- Um fim (arredondado) chamado "Sucesso".
🟡 Intermediário
- Conexões com Texto: Crie um fluxo onde uma decisão "Idade >= 18?" tenha duas saídas:
- Uma seta com o texto "Sim" para o nó "Pode entrar".
- Uma seta com o texto "Não" para o nó "Acesso negado".
- Alinhamento: Altere o diagrama anterior. Use a direção
TD(Top Down).
🔴 Desafio
- O Fluxo da Vida (ou do Código):
- Crie um arquivo
exercicio09.md. - Desenvolva um fluxograma Mermaid completo para um "Sistema de Alarme":
- Início: Alarme Ativado.
- Sensor detecta movimento?
- Se Sim -> Tocar sirene -> Notificar proprietário.
- Se Não -> Continuar monitorando (voltar ao sensor).
- Use diferentes formatos de nós e setas espessas (
==>) nos caminhos críticos.
- Crie um arquivo
Exercícios - Aula 10: Mermaid Avançado ⚡
🟢 Básico
- Diagrama de Sequência: Crie um diagrama onde "Cliente" envia a mensagem "Olá" para "Servidor" e o "Servidor" responde com "Como posso ajudar?".
- Mapa Mental: Crie um mindmap com o nó central "Frutas" e três ramificações: "Vermelhas", "Amarelas" e "Verdes".
🟡 Intermediário
- Estilização: Crie um fluxograma (
graph LR) com dois nós (A e B). Aplique um estilo ao nó A para que ele tenha fundo verde (#00ff00) e borda preta grossa. - Gantt Simples: Crie um gráfico de Gantt de um final de semana.
- Sábado: "Descansar" (8h).
- Domingo: "Estudar" (4h).
🔴 Desafio
- Interação de Sistema Complexa:
- Crie um arquivo
exercicio10.md. - Desenvolva um diagrama de sequência que represente o fluxo de "Esqueci minha senha":
- Ator: Usuario.
- Participantes: App, EmailService, Database.
- O usuário solicita a recuperação.
- O App consulta o Email no DB.
- O DB confirma a existência.
- O App solicita ao EmailService o envio do link.
- O EmailService confirma o envio.
- O App informa o usuário: "Verifique sua caixa de entrada".
- Adicione uma nota (
Note over ...) no diagrama explicando que o token expira em 30 min.
- Crie um arquivo
- Dentro de cada ramificação, adicione 2 itens (ex: Frontend -> React, Vue).
Exercícios - Aula 11: MathJax 🔢
🟢 Básico
- Equação Simples: Escreva a famosa equação de Einstein (\(E = mc^2\)) usando a sintaxe MathJax inline.
- Frações: Represente a fração "um terço" usando o comando
\fracem um bloco de visualização ($$).
🟡 Intermediário
- Química: Escreva a fórmula da água (\(H_{2}O\)) e da água oxigenada (\(H_{2}O_{2}\)) usando subscritos.
- Matemática: Represente a fórmula da área de um círculo (\(A = \pi r^2\)) e a fórmula do Teorema de Pitágoras (\(a^2 = b^2 + c^2\)).
🔴 Desafio
- Folha de Cálculos Médicos:
- Crie um arquivo
exercicio11.md. - Documente a fórmula para o cálculo de Gotejamento de Soro:
Gotas/min = \frac{Volume}{Tempo \times 3}
- Documente a fórmula do IMC (Índice de Massa Corporal):
IMC = \frac{Peso}{Altura^2}
- Use blocos de visualização (
$$) para as fórmulas e blocos!!! infopara explicar o significado de cada variável (ex: Volume em ml, Tempo em horas). - Adicione um diagrama Mermaid que mostre o fluxo: "Coletar Dados" -> "Aplicar Fórmula" -> "Resultado".
- Crie um arquivo
Exercícios - Aula 12: Markdown Acadêmico 🎓
🟢 Básico
- Citações: Escolha uma frase de um livro ou autor famoso e formate-a como um bloco de citação (
blockquote). - Hierarquia: Organize os seguintes itens em uma estrutura de títulos Markdown coerente: "Título do Trabalho", "Introdução", "Objetivos Específicos", "Conclusão".
🟡 Intermediário
- Notas de Rodapé: Escreva um parágrafo sobre a importância da pesquisa científica e use uma nota de rodapé para citar o site "A ciência hoje".
- Sumário: Explique como o MkDocs ajuda na navegação de documentos acadêmicos longos sem que o autor precise criar um sumário manual em cada página.
🔴 Desafio
- Estrutura de Relatório Técnico:
- Crie um arquivo
exercicio12.md. - Simule um pequeno relatório de "Impacto Ambiental":
- Título (H1).
- Seção de "Metodologia" (H2).
- Use uma Tabela para mostrar os resultados coletados (Data | Local | Nível de Ruído).
- Use uma Nota de Rodapé para referenciar a norma técnica utilizada.
- Inclua um diagrama Mermaid (Aula 09) mostrando o fluxo da pesquisa: Coleta -> Análise -> Relatório.
- Use uma fórmula matemática (Aula 11) que fundamente seu estudo.
- Crie um arquivo
Exercícios - Aula 13: Apresentações com Reveal.js 🎭
🟢 Básico
- Separação de Slides: Crie um arquivo com três slides simples, separados pelo delimitador correto (
---). - Títulos Dinâmicos: O primeiro slide deve ter um título H1 e o segundo um H2.
🟡 Intermediário
- Fragmentos de Texto: Crie um slide com uma lista de 3 passos para "Fazer um Café". Use o recurso
{ .fragment }para que cada passo apareça um por um. - Notas do Orador: Pesquise como adicionar notas que apenas o apresentador vê (Dica: Procure pela tag
<aside class="notes">) e adicione uma nota ao seu primeiro slide.
🔴 Desafio
- Pitch de Projeto Interativo:
- Crie um arquivo
exercicio13.md. - Desenvolva uma apresentação de 5 slides para o seu "Projeto Intergrador" (que faremos na Aula 15):
- Slide 1: Título e Nome (Capa).
- Slide 2: O Problema (usando fragmentos para listar 3 pontos).
- Slide 3: A Solução (com um diagrama Mermaid).
- Slide 4: Tecnologias (uma tabela com Markdown, MkDocs, Reveal.js).
- Slide 5: Encerramento com um link para seu GitHub.
- Tente usar uma transição diferente (como
convexouzoom) se você estiver testando localmente com o plugin.
- Crie um arquivo
- Use emojis em cada slide para manter o engajamento.
Exercícios - Aula 14: Termynal.js Interativo 🐚
🟢 Básico
- Primeiro Comando: Crie um bloco
termynalque simule a digitação do comandoecho "Olá Mundo". - Identificação de Símbolos: O que acontece na animação se você remover o símbolo
$do início de uma linha em um blocotermynal?
🟡 Intermediário
- Fluxo de Instalação: Crie uma simulação que mostre:
- O comando
npm init -y. - Uma saída de texto simulando a criação do arquivo
package.json. - O comando
npm install.
- O comando
- Comentários no Terminal: Use o símbolo
>para adicionar um comentário explicativo no meio de uma simulação de comandos Git.
🔴 Desafio
- Simulação Técnica de Deploy:
- Crie um arquivo
exercicio14.md. - Desenvolva um bloco
termynalcompleto que conte a "história" de um deploy:- Digitar:
git push origin main. - Saída:
Enumerating objects: 5, done. - Saída:
Counting objects: 100% (5/5), done. - Saída:
To github.com:usuario/repo.git. - Digitar:
mkdocs gh-deploy. - Saída:
Copying 'site' to 'gh-pages' branch.... - Saída:
Your site has been deployed to: https://usuario.github.io/repo/.
- Digitar:
- Adicione uma nota de rodapé no final da simulação explicando que o comando
ls -ldetalha as permissões de arquivos.
- Crie um arquivo
Exercícios - Aula 15: Projeto Integrador 🚀
🟢 Básico
- Recursos de Módulo 4: Explique a importância de simulações de terminal (
termynal) e apresentações (reveal.js) em documentações técnicas. - Consistência: Por que é vital manter uma linguagem e estilo visual consistentes em todo o projeto final?
🟡 Intermediário
- Consolidação Visual: Crie um diagrama Mermaid (
graph TD) que mapeie toda a estrutura de pastas do seu projeto atual. - Fórmulas e Tabelas: Escolha uma métrica do seu sistema fictício (ex: Tempo de Resposta ou Preço) e documente-a usando uma fórmula MathJax e uma tabela comparativa.
🔴 Desafio
- O Arremate Final:
- Esta aula É o mini-projeto. Siga os requisitos detalhados na seção Projeto 15.
Exercícios - Aula 16: Finalização e Próximos Passos 🎓
🟢 Básico
- Revisão de Portfólio: Abra o seu
index.mde verifique se ele descreve corretamente o que você aprendeu nas 16 aulas. - Tags de Versão: Crie um bloco
termynalque simule a criação de uma tag Git para a versão final do seu curso (v1.0).
🟡 Intermediário
- Mapa do Conhecimento: Crie um diagrama Mermaid (
mindmap) que resuma os 4 módulos do curso e seus principais tópicos. - Referência Futura: Adicione uma nota de rodapé ao seu documento final citando o site oficial do MkDocs como uma fonte para estudos avançados.
🔴 Desafio
- Relatório de Aprendizado Final:
- Crie um arquivo
exercicio16.md. - Escreva um pequeno parágrafo de 3 linhas sobre como o Markdown mudou sua forma de documentar software.
- Use uma Fórmula MathJax para representar seu "Crescimento de Conhecimento" (ex: \(C = \int_{aula1}^{aula16} Aprendizado \, dt\)).
- Adicione um diagrama Mermaid de sequência mostrando o fluxo: Aluno -> Curso -> Markdown Master.
- Inclua um badge do Shields.io com o texto "Status: Certificado".
- Finalize com uma simulação
termynalque "limpe" o terminal e dê as boas-vindas ao seu novo status de especialista.
- Crie um arquivo
Solução - Aula 01: Introdução ao Markdown 📝
🟢 Básico
- Definição: Markdown é uma linguagem de marcação leve que permite formatar texto usando sintaxe simples, focando na legibilidade do conteúdo original antes da conversão para HTML.
- Extensões: A extensão correta é
.md.
🟡 Intermediário
- Vantagens: Portabilidade (abre em qualquer lugar), integração nativa com versionamento (Git) e foco no conteúdo/estrutura em vez de design ad-hoc.
- Ferramentas: VS Code (extensões de preview), Typora (foco minimalista) ou Obsidian (gestão de notas).
🔴 Desafio
- Instalação e Setup: Resposta prática (Verificar se o aluno conseguiu abrir o preview no VS Code com
Ctrl+Shift+V).
Solução - Aula 02: Sintaxe Básica ✍️
🟢 Básico
- Títulos:
- Estilos: Markdown ~~é~~ incrível!
🟡 Intermediário
-
Listas:
- Arroz
- Feijão
-
Café
-
Ferver água
- Colocar pó no filtro
- Coar
- Links e Imagens:
[GitHub](https://github.com)e
🔴 Desafio
- A Mistura Perfeita: Resposta prática combinando os elementos citados.
Solução - Aula 03: Organização e Boas Práticas 📂
🟢 Básico
- Links Relativos:
[Projeto](docs/projeto.md) - Hierarquia: Melhora o SEO, a acessibilidade e a organização lógica (apenas um H1 por página é a recomendação padrão).
🟡 Intermediário
- Checklists:
- Organizar docs
- Criar README
- Subir para GitHub
- Ancoragem: No topo:
[Contato](#contato). No final:## Contato.
🔴 Desafio
- A Mágica dos Badges: Resposta baseada no uso do Shields.io.
Solução - Aula 04: Markdown para Programação 💻
🟢 Básico
- Inline vs Bloco: A variável
contadordeve ser... - Destaque de Sintaxe:
🟡 Intermediário
- Documentação de API: Tabela com colunas Parâmetro (String), Tipo, Descrição.
- Comentários de Código: Usando
#dentro do bloco Python.
🔴 Desafio
- Simulação Técnica: Resposta prática usando blocos
termynalepython.
Solução - Aula 05: Tabelas e Estrutura Técnica 📊
🟢 Básico
- Alinhamento: Use
:---:na linha separadora. - GitHub Checklists:
[ ]aparece como uma caixa vazia clicável e[x]como uma caixa marcada. - Markdown em Tabelas: Sim, é possível usar links, negrito, itálico e até emojis dentro das células.
🟡 Intermediário
- Tabela de Requisitos: | ID | Requisito | | --- | --- | | RF01 | Login |
- Checklist de Projeto:
- Backend
- Frontend
🔴 Desafio
- Dashboard: Resposta prática combinando tabelas e checklists.
Solução - Aula 06: Markdown + GitHub 🐙
🟢 Básico
- Fixes #10: Fecha a Issue de número 10 automaticamente quando o PR é aceito na branch principal.
- Menções: Use
@username.
🟡 Intermediário
- Badges: Fornecem feedback visual imediato sobre o status do projeto (Build, Testes, Versão).
- Issue Template: Facilitam a padronização dos relatos de bug por usuários.
🔴 Desafio
- Bug Report: Resposta prática criando um arquivo
.mdcom seções estruturadas.
Solução - Aula 07: Markdown Estendido ➕
🟢 Básico
- Risco do HTML: Perda de legibilidade no formato "raw" e possível quebra de renderização em alguns leitores limitados.
- Notas de Rodapé: Referência:
[^1]. Definição:[^1]: Texto. - Tag
<br>: Força uma quebra de linha manual.
🟡 Intermediário
- HTML Customizado: Uso de
<p align="center">ou estilos inline. - Shortcodes:
:rocket:para 🚀.
🔴 Desafio
- Documento Acadêmico: Resposta prática com notas de rodapé e citações.
Solução - Aula 08: Projeto Intermediário 🏗️
🟢 Básico
- Revisão Aula 01: Adição de Badges e Tabelas de ferramentas.
- Organização: Facilita a escalabilidade e a manutenção do projeto.
🟡 Intermediário
- Checklist de Qualidade: Verificação de links e hierarquia.
🔴 Desafio
- TaskMaster CLI: Documentação completa com README, Instalação e Referência Técnica.
Solução - Aula 09: Mermaid na Prática: Fluxogramas 🧜♀️
🟢 Básico
- LR: Left to Right (Esquerda para a Direita).
- Decisão: Usando chaves
{Texto}.
🟡 Intermediário
- Texto vs Imagem: Facilidade de edição, controle de versão (Git) e renderização automática pelo MkDocs sem precisar carregar arquivos binários pesados.
- Nós:
A(Início) --> B[Processo].
🔴 Desafio
- Login de Usuário:
mermaid graph TD A(Início) --> B[Digitar Credenciais] B --> C{Senha Correta?} C -- Sim --> D[Acesso Autorizado] C -- Não --> B
Solução - Aula 10: Mermaid Avançado ⚡
🟢 Básico
- Participant vs Actor:
participanté um componente retangular,actoré um ícone de "palitinho" que representa um humano ou entidade externa. - dateFormat: Define como as datas serão interpretadas no gráfico de Gantt.
🟡 Intermediário
- Style:
style B fill:#ffff00. - Sequência:
A ->> B: Mensagem.
🔴 Desafio
- Mapa Mental:
mermaid mindmap root((Tecnologia)) Frontend React Vue Backend Node Python Soft Skills Comunicação Liderança
Solução - Aula 11: MathJax 🔢
🟢 Básico
- $ vs $$:
$é para fórmulas dentro do texto (inline);$$centraliza a fórmula em um bloco separado. - Fração:
\frac{3}{4}.
🟡 Intermediário
- MkDocs: Precisa da extensão
arithmatexhabilitada nomkdocs.yml. - Potência/Subscrito:
x^2eH_2O.
🔴 Desafio
- Folha de Fórmulas: Resposta prática contendo \(F=m \cdot a\), \(C_6H_{12}O_6\) e \(A=\pi r^2\).
Solução - Aula 12: Markdown Acadêmico 🎓
🟢 Básico
- Citação Direta: Use o símbolo
>no início da linha. - Pandoc: Converte Markdown para diversos formatos como PDF, DOCX e LaTeX aplicando normas de formatação (como ABNT).
🟡 Intermediário
- Hierarquia: Organiza o sumário, facilita a navegação e segue padrões semânticos de acessibilidade e SEO.
- Notas de Rodapé: Usadas para referências bibliográficas detalhadas sem poluir o texto principal.
🔴 Desafio
- Artigo Científico: Resposta prática seguindo a estrutura Título -> Resumo -> Corpo -> Referências.
Solução - Aula 13: Apresentações com Reveal.js 🎭
🟢 Básico
- Reveal.js: Transforma arquivos Markdown em slides interativos navegáveis pelo navegador.
- Separação de Slides:
---(três hifens) para slides horizontais.--(dois hifens) para slides verticais (sub-slides).
🟡 Intermediário
- Notas do Orador: Usando
note:dentro do slide. - Markdown Externo: Permite manter o conteúdo dos slides em arquivos separado da estrutura HTML do Reveal.js.
🔴 Desafio
- Slide Interativo: Resposta prática criando a estrutura de slides para uma aula rápida.
Solução - Aula 14: Simulação de Terminal com Termynal.js 🐚
🟢 Básico
- Termynal.js: Biblioteca que simula a digitação e execução de comandos em um terminal diretamente na página web.
- Símbolo de Prompt: Geralmente o
$ou#.
🟡 Intermediário
- Atraso (Delay): Configurável via atributos
data-delay. - Saída de Comandos: Linhas que não começam com o prompt são interpretadas como a resposta do sistema.
🔴 Desafio
- Fluxo de Instalação: Resposta prática simulando
npm install,mkdirels.
Solução - Aula 15: Projeto Integrador 🚀
🟢 Básico
- Módulo 4: Focado em técnicas de apresentação e deploy automatizado (slides e terminais interativos).
- Consistência: Garante que o usuário final entenda a documentação como um todo unificado.
🟡 Intermediário
- Revisão Técnica: Verificação de links, imagens e renderização de diagramas.
🔴 Desafio
- Projeto Integrador: Documentação completa utilizando todos os recursos de Módulos 1 a 4.
Solução - Aula 16: Apresentação Final 🎓
🟢 Básico
- Deploy: Processo de publicar o site gerado pelo MkDocs em um servidor (como o GitHub Pages).
- GitHub Pages: Serviço de hospedagem de sites estáticos diretamente de um repositório GitHub.
🟡 Intermediário
- mike: Ferramenta para gerenciar múltiplas versões da documentação MkDocs.
- GitHub Actions: Automatiza o processo de build e deploy sempre que há um novo commit.
🔴 Desafio
- Site de Documentação Final: Publicação bem-sucedida do curso e compartilhamento do link.
Quizzes
Quizzes Interativos 🧠
Teste seus conhecimentos após cada aula com nossos quizzes interativos.
Módulo 1: Fundamentos e Escrita Técnica
- Quiz 01: Introdução ao Markdown
- Quiz 02: Sintaxe Básica
- Quiz 03: Organização e Boas Práticas
- Quiz 04: Markdown para Programação
Módulo 2: Estrutura e Dados
- Quiz 05: Tabelas e Estrutura Técnica
- Quiz 06: Markdown + GitHub
- Quiz 07: Markdown Estendido
- Quiz 08: Projeto Intermediário
Módulo 3: Visualização e Ciência
- Quiz 09: Diagramas com Mermaid
- Quiz 10: Diagramas Avançados
- Quiz 11: Fórmulas Matemáticas com MathJax
- Quiz 12: Markdown para Conteúdo Acadêmico
Módulo 4: Automação e Entrega
- Quiz 13: Apresentações com Reveal.js
- Quiz 14: Simulação de Terminal com Termynal.js
- Quiz 15: Projeto Integrador
- Quiz 16: Apresentação Final
Quiz 01 - Markdown Moderno para Computação
Quiz 02 - Markdown Moderno para Computação
Quiz 03 - Markdown Moderno para Computação
Quiz 04 - Markdown Moderno para Computação
Quiz 05 - Markdown Moderno para Computação
Quiz 06 - Markdown Moderno para Computação
Quiz 07 - Markdown Moderno para Computação
`
Quiz 08 - Markdown Moderno para Computação
Quiz 09 - Markdown Moderno para Computação
Quiz 10 - Markdown Moderno para Computação
Quiz 11 - Markdown Moderno para Computação
Quiz 12 - Markdown Moderno para Computação
Quiz 13 - Markdown Moderno para Computação
Quiz 14 - Markdown Moderno para Computação
Quiz 15 - Markdown Moderno para Computação
Quiz 16 - Markdown Moderno para Computação
Projetos
Projetos do Curso 🏗️
Nesta seção, você encontrará os projetos práticos associados a cada aula. Os projetos são projetados para consolidar os conceitos aprendidos através de aplicações no mundo real.
Módulo 1: Fundamentos e Escrita Técnica
- Projeto 01: Meu Primeiro Repositório
- Projeto 02: Currículo em Markdown
- Projeto 03: Guia de Comandos Git
- Projeto 04: Portfólio Inicial
Módulo 2: Estrutura e Dados
- Projeto 05: Documentação de API
- Projeto 06: Wikicode Profissional
- Projeto 07: Tabela de Preços Dinâmica
- Projeto 08: Relatório de Metas
Módulo 3: Visualização e Ciência
- Projeto 09: Fluxograma de Sistema
- Projeto 10: Diagrama de Sequência de Login
- Projeto 11: Cronograma de Projeto (Gantt)
- Projeto 12: Mapa Mental de Carreira
Módulo 4: Automação e Entrega
- Projeto 13: Apresentação de Startup
- Projeto 14: Simulação de Deploy
- Projeto 15: Automação de Relatórios
- Projeto 16: Site de Documentação Final
Projeto 01 - O Começo de Tudo 🚀
Objetivo
Configurar seu ambiente de trabalho e criar a estrutura inicial do seu repositório de estudos.
Requisitos
- Criar uma pasta chamada
estudos-markdown. - Dentro dela, criar um arquivo
README.md. - Adicionar uma estrutura básica:
- Título principal
- Seção "Sobre Mim"
- Seção "Objetivos com o Curso"
- Uma lista de 3 ferramentas que você instalou (ex: VS Code, Git, Extensões).
Entrega
Mostre o arquivo renderizado (Preview) no seu editor de escolha.
Projeto 02 - Perfil Profissional Estilizado 🎨
Objetivo
Aplicar a sintaxe básica para criar um documento de perfil pessoal ou profissional que seja visualmente organizado.
Requisitos
- Título Principal (H1) com seu nome completo.
- Foto de Perfil: Use uma URL de imagem (pode ser seu avatar do GitHub).
- Resumo (H2): Um parágrafo curto sobre suas aspirações. Use itálico para palavras-chave.
- Habilidades Técnicas (H2): Uma lista não ordenada contendo pelo menos 5 linguagens ou ferramentas.
- Redes Sociais: Uma lista de links para seu LinkedIn, GitHub, etc.
- Citação Favorita: Use um bloco de citação (
>) para colocar uma frase que você gosta.
Entrega
Gere o arquivo projeto02.md e verifique se todos os links e imagens estão funcionando no preview.
Projeto 03 - Repositório Profissional 🧱
Objetivo
Transformar sua pasta de estudos em um repositório organizado e documentado, seguindo padrões profissionais do GitHub.
Requisitos
- README.md na Raiz:
- Um título impactante com um Badge (pode usar do Shields.io).
- Seção "O que é este repositório?".
- Seção "Aulas Concluídas" usando uma Checklist.
- Pasta
docs/:- Arquivo
index.mdservindo como sumário. - Arquivo
anotacoes.mdcom suas notas das primeiras 3 aulas.
- Arquivo
- Links Interligados:
- O
README.mddeve apontar para odocs/index.md. - O
docs/index.mddeve ter links para as anotações. - Todos os arquivos na pasta
docs/devem ter um link no rodapé "Voltar ao Início".
- O
Entrega
Mostre a navegação funcionando no preview do seu editor, clicando nos links e verificando se os caminhos estão corretos.
Projeto 04 - Guia do Desenvolvedor 🚀
Objetivo
Criar uma página de documentação técnica para um pequeno script ou função, utilizando os recursos de programação do Markdown.
Requisitos
- Título (H1): Nome da Ferramenta ou Script.
- Exemplo de Uso (H2): Use o bloco
termynalpara mostrar como o script é invocado no terminal. - Código Fonte (H2): Insira o código (pode ser fictício) dentro de um bloco com o destaque de sintaxe correto.
- Documentação da Função (H2): Use uma tabela para descrever os argumentos de entrada e o que a função retorna.
- Dica Técnica: Use um bloco
!!! tippara dar um conselho de "Boa Prática" relacionado ao código que você apresentou.
Entrega
Gere o arquivo projeto04.md e verifique se o realce de cores do código está funcionando e se a simulação de terminal está legível.
Projeto 05 - Gerenciador de Requisitos 📋
Objetivo
Utilizar tabelas e checklists para documentar a estrutura e os requisitos de um novo projeto de software.
Requisitos
- Título (H1) com o nome do sistema (ex: Sistema de Biblioteca).
- Descrição do Projeto: Um parágrafo curto.
- Escopo de Funcionalidades (H2):
- Use uma Checklist para listar o que o sistema deve fazer (ex: [ ] Cadastrar livro, [ ] Alugar livro).
- Tabela de Dados (H2):
- Crie uma tabela que descreva o modelo de dados de um "Livro" (Campo, Tipo, Obrigatório [Sim/Não], Descrição).
- Critérios de Aceite (H2):
- Uma tabela relacionando a funcionalidade com o teste que deve ser feito para validá-la.
Entrega
Gere o arquivo projeto05.md. Verifique se a tabela de requisitos está bem alinhada e se a checklist reflete o status inicial do projeto (tudo pendente).
Projeto 06 - Repositório Social e Badges 🐙
Objetivo
Configurar os elementos sociais e informativos de um repositório no GitHub usando Markdown avançado.
Requisitos
- README.md com Badges:
- Adicione pelo menos 3 badges no topo do seu
README.md(ex: Versão, Licença, Status).
- Adicione pelo menos 3 badges no topo do seu
- Template de Issue (H2):
- Crie uma seção que simule um "Bug Report" usando tabelas para descrever o ambiente (OS, Browser, Versão).
- Mencione e Linke:
- Crie uma seção de "Colaboradores" e mencione o perfil do seu professor (ex: @ricardotecpro).
- Crie um link que aponte para uma Issue fictícia
#1.
- Demonstração Visual:
- Insira um Emoji coerente em cada um dos seus títulos.
Entrega
Gere o arquivo projeto06.md. Verifique se os badges (imagens) estão carregando corretamente e se as menções e referências de issue estão destacadas.
Projeto 07 - Artigo Técnico Estilizado 📝
Objetivo
Unir os recursos do Markdown padrão com extensões e HTML para criar um documento com visual refinado e referências profissionais.
Requisitos
- Cabeçalho HTML: Use
<h1 align="center">com uma cor personalizada (CSS inline) para o título do seu artigo. - Uso de Emojis: Utilize emojis como separadores ou marcadores de seções importantes.
- Notas de Rodapé: Inclua pelo menos 2 notas de rodapé ao longo do texto para explicar termos complexos ou referenciar fontes.
- Formatação Fina: Use as tags
<u>(sublinhado),<sub>(subscrito) ou<sup>(sobrescrito) em algum ponto do texto onde faça sentido técnico. - Sumário de Notas: Garanta que as notas de rodapé estejam bem explicadas ao final.
Entrega
Gere o arquivo projeto07.md. Verifique no preview se o HTML foi renderizado corretamente e se as notas de rodapé criam os links de "ida e volta" automaticamente.
Projeto 08 - Documentação do TaskMaster CLI 🏗️
Objetivo
Consolidar todo o aprendizado dos Módulos 1 e 2 em um único conjunto de documentação técnica profissional para um sistema fictício de linha de comando.
Requisitos
- Estrutura de Arquivos:
README.mdna raiz do projeto.- Pasta
docs/comindex.md,setup.mdeapi.md.
- Conteúdo do README:
- Badges de versão e status.
- Descrição breve do sistema.
- Checklist de funcionalidades.
- Link para a pasta
docs/.
- Conteúdo do Setup (
setup.md):- Instruções usando blocos
termynal. - Lista de requisitos de sistema.
- Instruções usando blocos
- Conteúdo da API (
api.md):- Tabela de comandos suportados (Comando, Descrição, Exemplo).
- Blocos de código demonstrando o uso.
- Navegação:
- Todos os arquivos devem estar interligados por links relativos.
- Use "Voltar ao Início" em cada página da pasta
docs/.
Entrega
Gere o arquivo projeto08.md que será o sumário de toda essa estrutura. Certifique-se de que o visual está moderno e as informações estão tecnicamente corretas.
Projeto 09 - Mapeamento de Lógica com Mermaid 🧜♀️
Objetivo
Utilizar o Mermaid para documentar visualmente a lógica de um algoritmo ou processo de negócio dentro de um arquivo Markdown.
Requisitos
- Título (H1): Nome do Processo (Ex: Fluxo de Compra Online).
- Descrição Contextual: Um breve parágrafo explicando o que o diagrama representa.
- Diagrama Mermaid (Flowchart):
- Deve conter pelo menos 5 nós.
- Deve incluir pelo menos um nó de decisão (
{}). - Deve usar setas com texto descritivo.
- Estilização: Use pelo menos uma seta espessa (
==>) para indicar o "Caminho Feliz" (o caminho de sucesso). - Dica Visual: Use um bloco
!!! tippara explicar como o leitor deve interpretar o diagrama.
Entrega
Gere o arquivo projeto09.md. Verifique se o diagrama é renderizado corretamente pelo MkDocs ou pelo preview do seu editor.
Projeto 10 - Documentação Visual de Arquitetura ⚡
Objetivo
Utilizar os recursos avançados do Mermaid para documentar a interação entre componentes de um software e a estrutura de conhecimento do projeto.
Requisitos
- Título (H1): Arquitetura do Sistema [Seu Nome].
- Mapa Mental de Funcionalidades (H2):
- Um mindmap detalhando os módulos do seu sistema.
- Fluxo de Dados (Diagrama de Sequência) (H2):
- Represente a interação entre um "Usuário", o "Frontend" e uma "API" durante a criação de um novo registro.
- Estilização de Destaque:
- No seu diagrama de sequência, use uma
Note right of API: Validação de Dadospara destacar uma regra de negócio.
- No seu diagrama de sequência, use uma
- Legenda com Badge:
- Adicione um badge do Shields.io no topo indicando que os diagramas estão na versão "Mermaid v10+".
Entrega
Gere o arquivo projeto10.md. Verifique se os diagramas complexos não estão "quebrando" o layout e se as mensagens do diagrama de sequência estão claras.
Projeto 11 - Prontuário Científico 🔢
Objetivo
Utilizar o MathJax para documentar procedimentos técnicos que envolvam cálculos matemáticos ou fórmulas químicas de forma profissional.
Requisitos
- Título (H1): Relatório Técnico de [Escolha um Tema: Química, Física ou Medicina].
- Introdução (H2): Um parágrafo explicando a importância das fórmulas no contexto escolhido.
- Seção de Fórmulas (H2):
- Apresente pelo menos 3 fórmulas complexas utilizando blocos
$$. - Use frações (
\frac), potências (^) e subscritos (_).
- Apresente pelo menos 3 fórmulas complexas utilizando blocos
- Legenda de Variáveis:
- Use uma Tabela Markdown para descrever o que cada letra da fórmula significa (Símbolo, Significado, Unidade).
- Dica Científica:
- Use um bloco
!!! tippara dar uma recomendação sobre a precisão dos cálculos.
- Use um bloco
Entrega
Gere o arquivo projeto11.md. Verifique se as fórmulas estão sendo renderizadas com a tipografia elegante do MathJax (geralmente em itálico matemático).
Projeto 12 - Artigo Acadêmico Estruturado 🎓
Objetivo
Aplicar os padrões de escrita acadêmica e técnica para criar um documento longo, organizado e bem referenciado no Markdown.
Requisitos
- Título (H1): [Escolha um tema científico ou tecnológico].
- Resumo (H2): Um parágrafo de introdução com uma citação direta (
>). - Desenvolvimento (H2):
- Pelo menos duas subseções (H3).
- Incorpore uma Tabela de dados comparativos.
- Referências e Notas (H2):
- Use pelo menos 3 notas de rodapé bibliográficas (
[^1]). - Garanta que os links de referência levem ao final do documento.
- Use pelo menos 3 notas de rodapé bibliográficas (
- Elemento Visual:
- Um diagrama Mermaid (Sequence ou Flowchart) que ilustre uma parte do seu artigo.
- Badge de Qualidade: Adicione um badge do Shields.io indicando "Padrão: ABNT-Simplificado".
Entrega
Gere o arquivo projeto12.md. O foco principal aqui é a estabilidade da navegação entre seções e a correção das notas de rodapé.
Projeto 13 - Deck de Slides Profissional 🎭
Objetivo
Transformar uma documentação técnica estática em uma apresentação visual atraente e interativa usando Reveal.js.
Requisitos
- Título (H1): Apresentação Técnica - [Título do Seu Tema].
- Estrutura de Slides:
- Mínimo de 8 slides.
- Todos separados por
---.
- Uso de Fragmentos:
- Pelo menos 2 slides devem utilizar listas fragmentadas (
{ .fragment }).
- Pelo menos 2 slides devem utilizar listas fragmentadas (
- Elementos Visuais:
- Inclua pelo menos um Diagrama Mermaid.
- Inclua pelo menos uma Tabela de dados.
- Inclua um bloco de Código com Syntax Highlighting (Aula 04).
- Configuração Visual:
- O conteúdo deve estar bem distribuído para não "vazar" da tela do slide.
Entrega
Gere o arquivo projeto13.md. Ao visualizar no MkDocs (com o plugin de slides), verifique se as transições entre os slides ocorrem suavemente e se os fragmentos funcionam na ordem esperada.
Projeto 14 - Showcase de CLI Animada 🐚
Objetivo
Criar uma página de documentação que simule o uso de uma ferramenta de linha de comando (CLI) de forma interativa e visualmente atraente.
Requisitos
- Título (H1): Documentação da CLI [Nome da sua Ferramenta].
- Contexto: Explique brevemente para que serve a ferramenta (ex: um conversor de imagens, um gerador de nomes, etc.).
- Simulação Principal (Bloco Termynal):
- Deve conter pelo menos 3 comandos digitados (
$). - Deve conter pelo menos 2 saídas do sistema (outputs estáticos).
- Deve representar um fluxo lógico (Ex: Configurar -> Processar -> Resultado).
- Deve conter pelo menos 3 comandos digitados (
- Estilização:
- Use Negrito para destacar os nomes dos comandos no texto explicativo.
- Use um Destaque de Sintaxe (Aula 04) para mostrar como o arquivo de configuração da ferramenta ficaria no VS Code.
Entrega
Gere o arquivo projeto14.md. Teste a animação no navegador; ela deve começar assim que o usuário rolar a página até o terminal.
Projeto 15 - Repositório de Documentação Épico 🚀
Objetivo
Finalizar a construção do repositório interativo, integrando todos os elementos técnicos, visuais e de navegação aprendidos durante o curso.
Requisitos
Este projeto é a culminação de todo o seu esforço. Ele deve conter:
1. Página Inicial (index.md): Com uma visão geral clara e badges profissionais.
2. Manual Técnico: Utilizando tabelas, listas e blocos de código com destaque de sintaxe.
3. Diagramação Avançada: Pelo menos um fluxograma e um diagrama de sequência Mermaid.
4. Cálculos e Ciência: Pelo menos dois exemplos de uso de MathJax em contextos reais.
5. Simulação Interativa: Um bloco termynal mostrando o uso prático de uma ferramenta.
6. Deck de Slides: Uma apresentação Reveal.js (.md) que resume todo o projeto.
Entrega
Gere o arquivo projeto15.md. No seu repositório real, faça o commit final e o deploy para o GitHub Pages. Verifique se o site renderizado reflete 100% da sua visão de "Documentação como Código".
Projeto 16 - Apresentação de Gala e Portfólio 🎓
Objetivo
Finalizar o portfólio de documentação, garantir a integridade de todos os arquivos e realizar uma "Apresentação de Gala" utilizando os recursos interativos aprendidos.
Requisitos
Este projeto final de curso consiste em:
1. Auditoria Geral:
- Verifique se todos os quizzes, slides, exercicios e projetos de 01 a 16 estão organizados e com links corretos.
2. Página de Encerramento:
- Crie uma página conclusao.md que resuma sua visão sobre o curso.
3. Showcase Visual:
- Garanta que seu projeto tenha pelo menos um exemplo de cada tecnologia: Mermaid, MathJax, Termynal.js e Reveal.js.
4. Deploy de Gala:
- Realize o deploy final para o GitHub Pages e verifique se o site está impecável no modo claro e escuro.
5. Apresentação:
- Utilize os slides da Aula 15 (aprimorados se necessário) para fazer uma demonstração do seu repositório.
Entrega
Gere o arquivo projeto16.md. Este arquivo deve conter o link para o seu repositório no GitHub e a URL do site publicado no GitHub Pages. Compartilhe o resultado e comemore o seu novo status de Markdown Master! 🚀
Configuração
Configuração do Ambiente 🛠️
Para desenvolver com eficiência neste curso, recomendamos configurar seu ambiente seguindo os guias abaixo de acordo com seu sistema operacional.
📋 Próximos Passos
Após configurar seu ambiente básico, não esqueça de:
- Instalar a extensão Markdown All in One no VS Code.
- Ativar o Auto Save para ver as mudanças refletidas instantaneamente no preview.
- Clonar o repositório de exemplos práticos da Aula 01.
Configurando o VS Code para Markdown 💻
O Visual Studio Code é a ferramenta recomendada para este curso devido ao seu excelente suporte nativo e vasta biblioteca de extensões.
1. Extensões Recomendadas 🔌
Para uma experiência "Moderno", instale as seguintes extensões no seu VS Code:
- Markdown All in One: Atalhos de teclado, sumários e formatação automática.
- Markdown Lint: Ajuda a manter a qualidade e padronização dos seus arquivos
.md. - Mermaid Editor: Para visualizar seus diagramas Mermaid em tempo real.
- Material Icon Theme: Deixa a barra lateral mais visual e fácil de navegar.
2. Atalhos Úteis ⌨️
Ctrl + Shift + V: Abre a pré-visualização (Preview) do Markdown ao lado do código.Ctrl + K V: Abre a pré-visualização em uma nova aba lateral.Ctrl + B: Alterna a visibilidade da barra lateral (espaço de escrita).
3. Dica de Produtividade 💡
Use o Auto Save. Vá em File > Auto Save para que suas alterações sejam salvas instantaneamente, atualizando o Preview automaticamente.
Setup MkDocs Local 🚀
Embora você possa escrever Markdown em qualquer lugar, rodar o MkDocs localmente permite que você veja exatamente como o site final ficará antes de enviá-lo para o GitHub.
1. Pré-requisitos 🐍
Para rodar o MkDocs, você precisa do Python instalado em sua máquina. - Baixe em: python.org
2. Instalação das Dependências 📦
Abra o terminal na pasta do projeto e execute:
(Isso instalará o MkDocs, o tema Material e todos os plugins de diagramas e slides usados no curso).
3. Rodando o Servidor 🌐
Para visualizar o site localmente, execute o comando:
O terminal informará um endereço (geralmente http://127.0.0.1:8000/). Copie e cole no seu navegador. Qualquer alteração que você fizer nos arquivos .md será refletida instantaneamente!
4. Gerando a Versão Final 🏗️
Quando estiver pronto para gerar os arquivos HTML estáticos:
Os arquivos serão gerados na pastasite/.Mac (Intel/Apple Silicon)
Versão para Impressão
Esta página foi gerada automaticamente para impressão.