Environment Variables
Auth API (waqfuel-auth-api)
Section titled “Auth API (waqfuel-auth-api)”| Variable | Required | Default | Deskripsi |
|---|---|---|---|
API_PORT | Yes | 3001 | Port REST server |
GRPC_PORT | Yes | 50051 | Port gRPC server |
DATABASE_URL | Yes | - | PostgreSQL connection string |
JWT_PRIVATE_KEY_PATH | Yes | - | Path ke RSA private key (PEM) |
JWT_PUBLIC_KEY_PATH | Yes | - | Path ke RSA public key (PEM) |
JWT_KEY_ID | Yes | - | Key ID untuk JWKS (kid) |
JWT_ACCESS_EXPIRES | No | 900 | Access token TTL (detik) |
JWT_REFRESH_EXPIRES | No | 604800 | Refresh token TTL (detik, default 7 hari) |
VERIFICATION_CODE_TTL | No | 600 | Email verification code TTL (detik) |
RESEND_MAX_ATTEMPTS | No | 3 | Max resend email attempts |
RESEND_RATE_LIMIT_WINDOW_SECONDS | No | 3600 | Rate limit window untuk resend |
SUPER_ADMIN_EMAIL | Yes | - | Email super admin (seeded saat startup) |
SUPER_ADMIN_PASSWORD | Yes | - | Password super admin (seeded saat startup) |
CORS_ALLOWED_ORIGINS | Yes | - | Comma-separated allowed origins |
COOKIE_DOMAIN | No | - | Domain untuk refresh token cookie (prod: .waqfuel.com) |
GRPC_REFERENCE | Yes | - | gRPC address reference-api (localhost:50050) |
GRPC_NOTIF | Yes | - | gRPC address notif-api (localhost:50052) |
Main API (waqfuel-main-api)
Section titled “Main API (waqfuel-main-api)”| Variable | Required | Default | Deskripsi |
|---|---|---|---|
API_PORT | Yes | 8081 | Port REST server |
DATABASE_URL | Yes | - | PostgreSQL connection string |
JWKS_AUTH | Yes | - | URL JWKS endpoint auth-api |
GRPC_AUTH | Yes | - | gRPC address auth-api (localhost:50051) |
CORS_ALLOWED_ORIGINS | Yes | - | Comma-separated allowed origins |
AWS_REGION | Yes | - | AWS region untuk S3 |
AWS_ACCESS_KEY_ID | Yes | - | AWS access key |
AWS_SECRET_ACCESS_KEY | Yes | - | AWS secret key |
AWS_BUCKET_ASSETS | Yes | - | S3 bucket name |
Notification API (waqfuel-notif-api)
Section titled “Notification API (waqfuel-notif-api)”| Variable | Required | Default | Deskripsi |
|---|---|---|---|
GRPC_PORT | Yes | 50052 | Port gRPC server |
RESEND_API_KEY | Yes | - | API key dari resend.com |
NOREPLY_EMAIL | Yes | - | Alamat email pengirim |
Reference API (waqfuel-reference-api)
Section titled “Reference API (waqfuel-reference-api)”| Variable | Required | Default | Deskripsi |
|---|---|---|---|
API_PORT | Yes | 4000 | Port REST server |
GRPC_PORT | Yes | 50050 | Port gRPC server |
DATABASE_URL | Yes | - | PostgreSQL connection string |
AWS_ENDPOINT | Yes | - | S3 endpoint URL |
AWS_BUCKET_ASSETS | Yes | - | S3 bucket name |
AWS_REGION | Yes | - | AWS region |
Docs Site (waqfuel-docs)
Section titled “Docs Site (waqfuel-docs)”| Variable | Required | Default | Deskripsi |
|---|---|---|---|
NODE_ENV | No | development | Environment mode |
PORT | No | 8080 | Port Express server |
SITE_URL | Yes | - | Full URL situs (untuk Astro build) |
ADMIN_USERNAME | Yes | - | Username admin panel |
ADMIN_PASSWORD_HASH | Yes | - | bcrypt hash password admin |
SESSION_SECRET | Yes | - | Session signing key (min 32 chars) |
AWS_REGION | Yes | - | AWS region |
AWS_ACCESS_KEY_ID | Yes | - | AWS access key |
AWS_SECRET_ACCESS_KEY | Yes | - | AWS secret key |
S3_BUCKET | Yes | - | S3 bucket docs media |
S3_PUBLIC_URL | Yes | - | Public URL S3 bucket |
GITHUB_TOKEN | Yes | - | GitHub Personal Access Token |
GITHUB_OWNER | Yes | - | GitHub repo owner |
GITHUB_REPO | Yes | - | GitHub repo name |
GITHUB_BRANCH | No | main | Target branch |
UPLOAD_MAX_SIZE_MB | No | 10 | Max upload size (MB) |
UPLOAD_MAX_CONCURRENT | No | 2 | Max concurrent uploads |
Frontend Clients
Section titled “Frontend Clients”Platform Client (waqfuel-platform-client)
Section titled “Platform Client (waqfuel-platform-client)”| Variable | Required | Deskripsi |
|---|---|---|
NEXT_PUBLIC_AUTH_API_URL | Yes | Auth API base URL |
NEXT_PUBLIC_MAIN_API_URL | Yes | Main API base URL |
NEXT_PUBLIC_REFERENCE_API_URL | Yes | Reference API base URL |
Public Web (waqfuel-web)
Section titled “Public Web (waqfuel-web)”| Variable | Required | Deskripsi |
|---|---|---|
NEXT_PUBLIC_AUTH_API_URL | Yes | Auth API base URL |
NEXT_PUBLIC_MAIN_API_URL | Yes | Main API base URL |
NEXT_PUBLIC_REFERENCE_API_URL | Yes | Reference API base URL |