Skip to content

Commit ea401f1

Browse files
committed
docs(readme): env and license description
1 parent 07f4f33 commit ea401f1

1 file changed

Lines changed: 26 additions & 14 deletions

File tree

README.md

Lines changed: 26 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,11 @@
1616

1717
- [FastAPI](https://fastapi.tiangolo.com) — API framework
1818
- [Alembic](https://alembic.sqlalchemy.org) — database migrations
19-
- [Celery](https://docs.celeryq.dev) + Redis — background task queue
19+
- [Celery](https://docs.celeryq.dev) + [Redis](https://redis.io) — background tasks queue
2020
- [Ruff](https://docs.astral.sh/ruff) — linter & formatter
2121
- [Loguru](https://loguru.readthedocs.io) — logging
2222
- [Scalar](https://scalar.com) — API docs
23+
- [Quran Foundation OAuth2](https://api-docs.quran.foundation) — user authentication via OAuth 2.0 Authorization Code + PKCE
2324

2425
**Shared** (`packages/core`)
2526

@@ -196,19 +197,26 @@ Always import new models in `alembic/env.py` for autogenerate to detect them.
196197

197198
Create a `.env` file in the project root with the following variables:
198199

199-
| Variable | Description |
200-
| ------------------- | -------------------------------- |
201-
| `VITE_API_URL` | Backend API base URL |
202-
| `DATABASE_URL` | PostgreSQL connection string |
203-
| `REDIS_URL` | Redis connection string |
204-
| `SECRET_KEY` | Application secret key |
205-
| `POSTGRES_USER` | DB user (used by Docker Compose) |
206-
| `POSTGRES_PASSWORD` | DB password |
207-
| `POSTGRES_DB` | DB name |
208-
| `OPENAI_API_KEY` | OpenAI API key |
209-
| `OPENAI_BASE_URL` | OpenAI-compatible base URL |
210-
| `VITE_GOOGLE_CLIENT_ID` | Google OAuth client ID (frontend) |
211-
| `GOOGLE_CLIENT_ID` | Google OAuth client ID (backend) |
200+
| Variable | Description |
201+
| ----------------------- | -------------------------------------------------------------------------------------------------- |
202+
| `VITE_API_URL` | Backend API base URL |
203+
| `DATABASE_URL` | PostgreSQL connection string |
204+
| `REDIS_URL` | Redis connection string |
205+
| `SECRET_KEY` | Application secret key |
206+
| `POSTGRES_USER` | DB user (used by Docker Compose) |
207+
| `POSTGRES_PASSWORD` | DB password |
208+
| `POSTGRES_DB` | DB name |
209+
| `OPENAI_API_KEY` | OpenAI API key |
210+
| `OPENAI_BASE_URL` | OpenAI-compatible base URL |
211+
| `VITE_GOOGLE_CLIENT_ID` | Google OAuth client ID (frontend) |
212+
| `GOOGLE_CLIENT_ID` | Google OAuth client ID (backend) |
213+
| `VITE_QF_CLIENT_ID` | Quran Foundation client ID (frontend, feature flag) |
214+
| `QF_CLIENT_ID` | Quran Foundation OAuth2 client ID |
215+
| `QF_CLIENT_SECRET` | Quran Foundation OAuth2 client secret (server-side only) |
216+
| `QF_AUTH_BASE_URL` | QF OAuth2 base URL (`https://oauth2.quran.foundation` / `https://prelive-oauth2.quran.foundation`) |
217+
| `QF_API_BASE_URL` | QF User API base URL (`https://apis.quran.foundation` / `https://apis-prelive.quran.foundation`) |
218+
| `QF_REDIRECT_URI` | Callback URL registered with QF (e.g. `https://api.qalbwise.app/auth/qf/callback`) |
219+
| `FRONTEND_URL` | Frontend origin for OAuth callback redirect |
212220

213221
Both the API and frontend load environment variables from the root `.env` file:
214222
- API: `apps/api/app/core/settings.py` loads from `ROOT_DIR / ".env"`
@@ -234,6 +242,10 @@ git commit -m "chore: bump dependencies"
234242

235243
The `pre-commit` hook automatically runs Biome (JS/TS) and Ruff (Python) on staged files. The `commit-msg` hook validates the commit message format.
236244

245+
## License
246+
247+
[MIT](LICENSE) — Copyright (c) 2026 Qalbwise
248+
237249
## Boilerplate Inspirations
238250

239251
- [indrazm/moonrepo-kickstart](https://github.com/indrazm/moonrepo-kickstart)

0 commit comments

Comments
 (0)