Skip to content

hebertcisco/pensador-api

:package: pensador-api

📦 pensador-api

API de frases do Pensador via Web Scraping

Issues Pull requests pensador-promise downloads
Report Bug · Request Feature

Live: https://pensador-api.vercel.app/


🚀 Quick Start / Início Rápido

Realize buscas por frases do Pensador usando o endpoint público.

curl

curl -s "https://pensador-api.vercel.app/?term=Jesus+Cristo&max=7"

HTTP

GET /?term=Jesus+Cristo&max=7 HTTP/1.1
Host: pensador-api.vercel.app
Accept: application/json

Parâmetros:

  • term (string): termo de pesquisa (autor, tema, etc.).
  • max (number): quantidade máxima de resultados (padrão: 10).

Exemplo de resposta:

{
  "termoDePesquisa": "frases_de_jesus_cristo",
  "total": 7,
  "frases": [{ "autor": "Jesus Cristo", "texto": "E conhecereis a verdade..." }]
}

Endpoints adicionais:

  • GET /status — status do serviço e informações de ambiente.

Observação: por favor, use com responsabilidade. Evite cargas excessivas para respeitar os limites do site de origem.


🧭 API Reference

GET /

  • Query: term (string), max (number, opcional, padrão 10)
  • Retorna: objeto com termoDePesquisa, total e lista frases (autor, texto)

GET /status

  • Retorna: { status, date, environment, aws: { region, function_version } }

🛠️ Local Development

Pré-requisitos: Node.js 18+ e npm 9+.

Clone o repositório e instale as dependências:

git clone https://github.com/hebertcisco/pensador-api.git
cd pensador-api
npm install

Configure variáveis de ambiente:

cp .env.example .env.local
# Opcional: edite .env.local
# DEFAULT_AUTHOR=Jesus Cristo
# PORT=3000
# BODY_PARSER_LIMIT=15mb
# MORGAN_FORMAT=":date[iso] HTTP/:http-version :method :url :status :response-time ms"

Rodando em desenvolvimento:

npm run dev
# Servidor: http://localhost:3000 (ou porta definida em PORT)

Build de produção:

npm run build

Observação: variáveis MONGODB_* existem no .env.example, mas não são necessárias no estado atual do projeto.


☁️ Deploy

Este projeto está configurado para a Vercel (veja vercel.json).

  • Entrada: src/server.ts com @vercel/node
  • Rotas: todos os caminhos mapeados para o servidor (/src/server.ts)

🤝 Contributing

Contribuições são bem-vindas! Leia o CONTRIBUTING.md e o CODE_OF_CONDUCT.md.

  • Acompanhe as issues
  • Sugira ideias usando o template de feature
  • Relate bugs com passos para reproduzir e logs

⚖️ License

MIT © Hebert F Barros. Veja LICENSE.


☕ Support

Se este projeto ajudou você, deixe uma estrela e considere um café:


Powered by pensador-promise.