Objetivo
Construir uma aplicação para processar e transcrever arquivos de áudio e vídeo enquanto exploro, de forma prática, o ciclo de desenvolvimento de software com Python.
O projeto deverá evoluir em etapas. Tecnologias, padrões e abstrações serão introduzidos quando ajudarem a resolver problemas concretos, sem antecipar uma arquitetura mais complexa do que a aplicação exige.
Links
- Repositório: media-transcriber
- Post de apresentação: De uma ideia abandonada a um laboratório de Engenharia de Software com Python
- Fundação do projeto: Como estruturei um projeto Python com qualidade e CI
Estado atual
- Fundação do projeto concluída e registrada na versão
v0.1.0 - Primeira CLI de entrada e validação de arquivos disponível na versão
v0.2.0 - Testes, cobertura, linting, formatação e análise estática integrados ao fluxo de desenvolvimento
- Pipeline de integração contínua configurada no GitLab
- Funcionalidades de processamento e transcrição ainda não implementadas
Primeira etapa
A versão v0.1.0 estabeleceu a fundação do projeto:
- estrutura moderna de projeto Python
- gerenciamento de dependências
- testes automatizados
- linting, formatação e análise estática de tipos
- cobertura de testes
- automação de validações locais
- pipeline inicial no GitLab CI
- documentação do ambiente de desenvolvimento
Evolução planejada
- entrada e validação de arquivos por uma CLI
- extração de áudio com FFmpeg
- integração com o primeiro mecanismo de transcrição
- revisão da arquitetura após os primeiros casos de uso reais
- containerização
- API HTTP
- persistência com PostgreSQL
- processamento assíncrono
- observabilidade
- primeira versão self-hosted