O Vidify é um gerador de vídeos que utiliza inteligência artificial para automatizar a criação de vídeos explicativos. Ele pesquisa o termo que você deseja, cria a narração em áudio, adiciona legendas e uma capa para o vídeo. No documento, você encontrará instruções detalhadas sobre como configurar e usar o Vidify.
Utilizando o app
app.mp4
Resultado
result.mp4
- Puppeteer: Para gerar a capa do vídeo e o código do exemplo de uso da feature.
- AWS Polly: Para gerar a narração do vídeo.
- Unsplash: Para pegar imagens relacionada ao termo.
- OpenAI API: Para gerar o código, a narração e detalhes da capa do vídeo.
- FFmpeg: Para juntar todas as partes do vídeo.
- Express.js: Para criar as rotas da API.
- Vite, shadcn/ui, Tailwind CSS, e IndexedDB: Para desenvolver o frontend.
- Socket.io: Para comunicar entre o frontend e o backend durante as etapas de geração do vídeo.
- Docker: Para containerizar a aplicação.
Crie um arquivo chamado .env
na pasta raiz
do seu projeto, seguindo o formato fornecido no arquivo .env.example
.
# OpenAi
OPENAI_API_KEY=your_openai_api_key
# AWS
AWS_REGION="us-east-1"
AWS_ACCESS_KEY_ID=your_aws_access_key_id
AWS_SECRET_ACCESS_KEY=your_aws_secret_access_key
# Unsplash
UNSPLASH_API_TOKEN=your_unsplash_api_key
O Dockerfile
incluído no projeto define o ambiente necessário para executar o Vidify. Ele começa com uma imagem base do Node.js, instala o FFmpeg, copia o código fonte do projeto para a imagem e constrói o frontend
e a api
antes de expor a porta 10000
para comunicação.
O docker-compose.yml
define como os serviços do Vidify são orquestrados. Inclui o serviço api
. O serviço api
constrói o contexto atual, expõe as portas necessárias, e define as dependências necessárias.
- Certifique-se de que o Docker e o Docker Compose estão instalados em sua máquina.
- Navegue até o diretório raiz do projeto no terminal.
- Execute o comando
docker-compose up --build -d
para construir e iniciar todos os serviços definidos nodocker-compose.yml
. - Uma vez que todos os serviços estejam em execução, acesse
http://localhost:10000
em seu navegador para acessar a interface do usuário do Vidify. - Use a interface do usuário para gerar vídeos, especificando o termo desejado.
- GET
/
: Serve o cliente frontend. - GET
/api/download/:id
: Baixa o vídeo gerado, onde:id
é o UUID do vídeo gerado. - POST
/api/generate
: Gera um vídeo com base nos parâmetros fornecidos no corpo da requisição.- Corpo da requisição:
{ "term": "termo_desejado" }
- Corpo da requisição:
- DELETE
/api/delete/:id
: Deleta o vídeo gerado pela:id
.
O frontend do Vidify foi desenvolvido usando Vite, shadcn/ui, Tailwind CSS, e IndexedDB. Você pode encontrar os arquivos de origem no diretório client/
. Para desenvolver localmente, navegue até este diretório e execute npm i
para instalar as dependências e npm run dev
para iniciar o servidor de desenvolvimento.