sistema de api para versículos bíblico
5.6K
API REST para consulta de versículos bíblicos, leitura diária e sorteio de versículos, baseada em FastAPI e SQLite.
Crie o arquivo docker-compose.yml na raiz do projeto:
version: '3.8'
services:
biblia-api:
build: .
container_name: biblia-api
ports:
- "8000:8000"
volumes:
- .:/app
environment:
- TZ=America/Sao_Paulo
Crie o arquivo Dockerfile na raiz do projeto:
FROM python:3.11-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
EXPOSE 8000
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]
Crie o arquivo requirements.txt (se ainda não existir):
fastapi
uvicorn
Certifique-se de que o arquivo do banco de dados nvi.db e o arquivo daily.json estejam na raiz do projeto.
Suba o serviço:
docker-compose up --build
A API estará disponível em http://localhost:8000.
GET /
Resposta:
{
"books": [
{
"id": 1,
"name": "Gênesis",
"abbrev": "gn",
...
},
...
]
}
GET /verse?book=Gênesis&chapter=1&verse=1
Parâmetros:
book (opcional): Nome do livrochapter (opcional): Número do capítuloverse (opcional): Número do versículoendverse (opcional): Número do último versículo (para intervalo)Resposta:
{
"verse": [
{
"name": "Gênesis",
"chapter": 1,
"verse": 1,
"text": "No princípio criou Deus os céus e a terra."
}
]
}
GET /daily
Retorna o(s) versículo(s) correspondente(s) ao dia atual, conforme definido em daily.json.
GET /today
Retorna o(s) versículo(s) do dia em formato de mensagem única.
GET /random
Retorna um versículo aleatório da lista daily.json.
GET /check
Retorna uma lista de itens de daily.json que não foram encontrados no banco de dados.
nvi.db (banco SQLite) e daily.json estejam presentes na raiz do projeto.Content type
Image
Digest
sha256:060c47edd…
Size
26.7 MB
Last updated
11 months ago
docker pull hassegawa/biblia-api