Uma aplicação completa com frontend HTML para buscar notícias reais sobre qualquer tema usando Docker.
- Docker (v20.10+)
- Docker Compose (v2.0+)
- Chave da NewsAPI (gratuita)
# Acesse https://newsapi.org e crie uma conta gratuita
# Copie sua chave da APIcd langchain-docker-app
cp .env.example .env
# Edite .env e adicione: NEWS_API_KEY=sua_chave_aquidocker-compose up --build- Frontend: http://localhost:8000
- API Docs: http://localhost:8000/docs
- API Health: http://localhost:8000/health
langchain-docker-app/
├── app/
│ ├── src/
│ │ ├── main.py # API FastAPI + Frontend
│ │ └── chains.py # Buscador de notícias
│ └── static/
│ └── index.html # Frontend HTML/CSS/JS
├── Dockerfile # Configuração Docker
├── docker-compose.yml # Orquestração
├── requirements.txt # Dependências Python
├── .env.example # Exemplo de configuração
└── README.md # Este arquivo
- Interface moderna com design responsivo
- Busca em tempo real de notícias
- Cards bonitos com imagens e metadados
- Links diretos para as notícias completas
- Tratamento de erros elegante
- Loading states durante as buscas
GET / # Interface HTML principalGET /health # Status da aplicação
POST /news # Buscar notícias
GET /docs # Documentação Swaggercurl -X POST http://localhost:8000/news \
-H "Content-Type: application/json" \
-d '{"topic":"inteligência artificial","limit":10}'NEWS_API_KEY=sua_chave_newsapi_aqui
DEBUG=False
LOG_LEVEL=INFO
HOST=0.0.0.0
PORT=8000- Acesse newsapi.org
- Crie conta gratuita
- Copie sua chave da API
- Cole no arquivo
.env
# Construir e executar
docker-compose up --build
# Apenas executar
docker-compose up
# Parar containers
docker-compose down
# Reconstruir sem cache
docker-compose build --no-cache
# Ver logs
docker-compose logs -f- Abra http://localhost:8000 no navegador
- Digite um tema (ex: "tecnologia", "política", "esportes")
- Selecione quantas notícias quer (5-20)
- Clique em "Buscar Notícias"
- Explore os resultados com links diretos
- ✅ Reais - Buscadas da NewsAPI
- ✅ Recentes - Últimos 7 dias
- ✅ Limitadas - Máximo 3 linhas por notícia
- ✅ Fonte - Mostra de qual site veio
- ✅ Links - Acesso direto à notícia completa
# Instalar dependências
pip install -r requirements.txt
# Executar aplicação
python app/src/main.pyEdite app/static/index.html e reconstrua:
docker-compose build --no-cache
docker-compose up- Verifique se o arquivo
.envexiste - Confirme que a chave está correta
- Reinicie os containers
- Tente um tema mais específico
- Verifique se há notícias recentes sobre o tema
- A API tem limite de 100 requisições/dia na versão gratuita
- Verifique se a porta 8000 está livre
- Confirme que o container está executando
- Limpe cache do navegador
- Backend: FastAPI (Python)
- Frontend: HTML5, CSS3, JavaScript (Vanilla)
- API: NewsAPI.org
- Container: Docker
- Orquestração: Docker Compose
- Adicionar filtros por data
- Suporte a múltiplos idiomas
- Cache de resultados
- Exportar para PDF
- Favoritar notícias
- Compartilhar nas redes sociais
MIT License - veja LICENSE para detalhes.