Transcriptor / README.md
CreatorKit
chore: configura deploy no Hugging Face Spaces
c66d152
|
Raw
History Blame Contribute Delete
3.04 kB
---
title: CreatorKit
emoji: 🎬
colorFrom: purple
colorTo: pink
sdk: docker
app_port: 7860
pinned: false
---
# ✦ CreatorKit
Plataforma local para criadores de conteúdo. Transcreve vídeos e gera caption, thread, post de blog, hooks, ideias, hashtags, bio, roteiro e calendário — tudo processado na própria máquina/servidor, sem API externa.
## 🧰 Ferramentas
| Ferramenta | Precisa de vídeo? |
|---|---|
| 🎬 Estúdio de Vídeo (transcrição → 9 saídas) | Sim |
| 🪝 Gerador de Hooks | Não |
| 💡 Ideias de Conteúdo | Não |
| 📝 Roteiro de Vídeo | Não |
| #️⃣ Hashtags por Tema | Não |
| ✍️ Bio de Perfil | Não |
| 📅 Calendário de Posts | Não |
## 🚀 Rodar localmente
Requisitos: **Node.js 18+**.
```bash
npm install
npm start
```
Acesse http://localhost:5050
O `yt-dlp` é baixado automaticamente na primeira execução. O `ffmpeg` já vem embutido via `ffmpeg-static`. O modelo Whisper (~250 MB no `small`) é baixado na primeira transcrição e fica em cache.
## 🐳 Deploy com Docker
```bash
docker build -t creatorkit .
docker run -p 5050:5050 creatorkit
```
A imagem já inclui `ffmpeg`, `python3` e `yt-dlp`.
## 🤗 Deploy no Hugging Face Spaces (grátis, com transcrição)
O HF Spaces dá **16 GB de RAM grátis**, o suficiente para rodar o Whisper. O projeto já está configurado (cabeçalho no topo deste README + porta `7860` no Dockerfile).
1. Crie uma conta em https://huggingface.co
2. **New Space** → SDK **Docker** → visibilidade **Public**
3. Suba o código no repositório do Space:
```bash
git remote add space https://huggingface.co/spaces/SEU-USUARIO/creatorkit
git push space main
```
4. O Space builda o `Dockerfile` sozinho. Em alguns minutos fica no ar com transcrição funcionando.
## ☁️ Deploy em Render / Railway / Fly.io
O projeto está pronto para qualquer plataforma que rode Docker:
1. Suba o repositório no GitHub.
2. Crie um serviço apontando para o repo (deixe a plataforma detectar o `Dockerfile`).
3. A porta é lida de `process.env.PORT` automaticamente.
4. Health check disponível em `/health`.
### Variáveis de ambiente (opcionais)
| Variável | Padrão | Descrição |
|---|---|---|
| `PORT` | `5050` | Porta do servidor |
| `YTDLP_PATH` | `/usr/local/bin/yt-dlp` (Docker) | Caminho do binário yt-dlp |
| `XENOVA_CACHE_DIR` | `/app/.cache` | Cache dos modelos Whisper |
## ⚠️ Considerações de produção
- **Whisper é pesado de CPU.** Em instâncias pequenas (512 MB–1 GB), use os modelos `tiny` ou `base`. O `medium`/`large` exigem servidores com mais memória/CPU.
- **Downloads de Instagram/YouTube** podem ser bloqueados a partir de IPs de datacenter. Funciona melhor em IP residencial; em nuvem pode exigir cookies/login.
- O processamento é **single-instance** (jobs ficam em memória). Para escalar horizontalmente, seria necessário uma fila externa (ex.: Redis).
- Arquivos temporários e jobs antigos são limpos automaticamente a cada 15 min (TTL de 1 h).
## 📄 Licença
ISC