Skip to main content

Converte arquivos Markdown para DOCX formatado em ABNT.

Project description

Conversor Markdown para Docx

O ConvertMarkdownToDocx é um projeto desenvolvido para automatizar a conversão de arquivos Markdown para documentos Word (.docx) formatados segundo as normas ABNT. É especialmente útil para acadêmicos, profissionais da educação, redatores técnicos e empresas que desejam uma forma prática e rápida de gerar documentos estruturados e profissionais a partir de conteúdo escrito em Markdown.

Proposta do Projeto

O objetivo principal deste projeto é simplificar e agilizar o processo de criação de documentos formatados corretamente, eliminando o tempo gasto com a formatação manual no Word. É uma solução ideal para quem utiliza regularmente Markdown e precisa gerar documentos em conformidade com as normas ABNT.

O projeto lê o conteúdo Markdown, interpreta títulos, listas, tabelas e outros elementos comuns, e gera automaticamente um documento Word formatado, pronto para revisão ou impressão.

Quando utilizar este projeto?

  • Criação rápida e eficiente de relatórios técnicos e acadêmicos.
  • Automatização da geração de documentos formatados conforme ABNT.
  • Simplificação do processo de conversão de conteúdos produzidos por plataformas como o ChatGPT.

Como utilizar

Opção 1: Instalação a partir do PyPI

A forma mais rápida de começar a usar o projeto é instalando diretamente do PyPI:

pip install convert_markdown

Após instalado, você pode executar o conversor diretamente:

  1. Para executar com o nome do arquivo gerado automaticamente:
convert_markdown input/seu_arquivo.md
  1. Caso deseje definir manualmente o nome do arquivo que será gerado:
convert_markdown input/seu_arquivo.md -o nome_final.docx

O arquivo convertido será salvo na pasta output.

Opção 2: Clonando o repositório

Se preferir trabalhar diretamente com o código-fonte, siga os passos abaixo:

Passo 1: Clone o repositório

git clone https://github.com/BrayanPletsch/ConvertMarkdownToDocx.git
cd ConvertMarkdownToDocx

Passo 2: Crie um ambiente virtual

python3 -m venv .venv      # Windows: python -m venv .venv 
source .venv/bin/activate  # Windows: .venv\Scripts\activate

Passo 3: Instale as dependências

pip install --upgrade pip
pip install -e .

Após esses passos, o comando convert_markdown estará disponível no seu terminal.

Passo 4: Execute o comando

convert_markdown input/seu_arquivo.md
# ou
convert_markdown input/seu_arquivo.md -o nome_final.docx

Estrutura do Projeto

ConvertMarkdownToDocx/
├── src/
│   └── convert_markdown/
│       ├── cli.py                # Interface de linha de comando
│       ├── converter.py          # Limpa e trata o conteúdo Markdown
│       ├── docx_generator.py     # Gera e formata o documento Word
│       └── utils/
│           └── markdown_utils.py # Funções auxiliares
├── tests/                        # Testes unitários
├── docs/                         # Documentação detalhada
├── input/                        # Arquivos Markdown de entrada
├── output/                       # Documentos Word gerados
├── LICENSE
├── pyproject.toml
├── requirements.txt
└── .gitignore

Funcionalidades principais

  • Lê texto Markdown com títulos, listas, tabelas e separadores.
  • Cria um .docx com:
    • Títulos formatados conforme ABNT (tamanhos 18, 16, 14).
    • Corpo com fonte Times New Roman 12, justificado, espaçamento 1.5.
    • Geração automática de sumário (necessita atualização manual no Word).
    • Tabelas com bordas e suporte a negrito dentro de células.
    • Rodapé com numeração automática das páginas.

Limitações atuais

  • Não processa imagens no formato Markdown (![]()).
  • Itálico (*texto*) ainda não é suportado.
  • Blocos de código (```) não são tratados adequadamente.
  • O sumário deve ser atualizado manualmente no Word após a geração.

Futuras melhorias

  • Implementação de suporte completo para imagens e links.
  • Melhoria na conversão de listas aninhadas.
  • Opção para exportação também em formato PDF.
  • Interface web interativa via Swagger/OpenAPI.

Como contribuir

Contribuições são muito bem-vindas! Caso queira contribuir, siga estes passos:

  1. Faça um fork do projeto.
  2. Crie uma branch com sua feature:
git checkout -b minha-melhoria
  1. Commit suas alterações:
git commit -m "feat: descrição da nova funcionalidade"
  1. Envie sua branch para o repositório:
git push origin minha-melhoria
  1. Abra um Pull Request com uma descrição clara das mudanças feitas.

Licença

Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.

Desenvolvido por Brayan Pletsch.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

convert_markdown_docx-0.1.0.tar.gz (6.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

convert_markdown_docx-0.1.0-py3-none-any.whl (8.8 kB view details)

Uploaded Python 3

File details

Details for the file convert_markdown_docx-0.1.0.tar.gz.

File metadata

  • Download URL: convert_markdown_docx-0.1.0.tar.gz
  • Upload date:
  • Size: 6.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.2 CPython/3.12.7 Linux/6.8.4-2-pve

File hashes

Hashes for convert_markdown_docx-0.1.0.tar.gz
Algorithm Hash digest
SHA256 4991017e6841e96d971665641863dac7db116ff58749a72d0d01c02ba2351adb
MD5 105c26915a1b1568efc068e30d856a74
BLAKE2b-256 93a2d63909385365d77550d5a7a1733f837ededfda07a435e5492675d88b3c6f

See more details on using hashes here.

File details

Details for the file convert_markdown_docx-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for convert_markdown_docx-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0d829c9b255bbb339c9c9f09e6aa7471ef5198d5a1dd952a9f985b5e8540f151
MD5 0e05896466a9aa4549a845ed5600de7c
BLAKE2b-256 b611f046ab001f13337a17e4d97462db56d3dddba9461ae3e45b89ed785927c4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page