Go to file
Anas Rashid 6bbd650741 Diwan: make env config work, ur-PK locale, own-site links relative
- AddEnvironmentVariables() where appsettings.json is read directly
- JWT ValidIssuer follows RSecurityBackend:ApplicationName (was hard-coded Ganjoor)
- deploy/entrypoint.sh: copy settings RSecurityBackend reads only from appsettings.json
- Dockerfile: pin SDK 10.0.302 (newer Razor rejects some upstream views)
- lang=ur-PK; ganjoor.net own-site links -> relative; api.ganjoor.net -> APIRoot; search.xml
- DIWAN.md: first admin password is Test!123 (upstream doc is wrong)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 23:32:16 +02:00
deploy Diwan: make env config work, ur-PK locale, own-site links relative 2026-10-04 23:32:16 +02:00
docs ganjoor software changelog 2026-09-27 18:06:03 +03:30
GanjooRazor Diwan: make env config work, ur-PK locale, own-site links relative 2026-10-04 23:32:16 +02:00
RMuseum Diwan: make env config work, ur-PK locale, own-site links relative 2026-10-04 23:32:16 +02:00
TajikGanjoor tajik recitation fix 2026-09-12 13:28:23 +03:30
.dockerignore Diwan: Urdu classical poetry fork of GanjoorService 2026-10-04 23:14:25 +02:00
.env.example Diwan: Urdu classical poetry fork of GanjoorService 2026-10-04 23:14:25 +02:00
.gitattributes Add project files. 2020-08-14 21:06:22 +04:30
.gitignore Diwan: Urdu classical poetry fork of GanjoorService 2026-10-04 23:14:25 +02:00
DIWAN.md Diwan: make env config work, ur-PK locale, own-site links relative 2026-10-04 23:32:16 +02:00
docker-compose.yml Diwan: Urdu classical poetry fork of GanjoorService 2026-10-04 23:14:25 +02:00
Dockerfile Diwan: make env config work, ur-PK locale, own-site links relative 2026-10-04 23:32:16 +02:00
GanjoorService.sln refactoring 2026-07-19 16:50:22 +03:30
LICENSE Create LICENSE 2020-08-14 21:35:13 +04:30
README.md Diwan: Urdu classical poetry fork of GanjoorService 2026-10-04 23:14:25 +02:00
RUNNING_LOCALLY.md documentations 2026-08-14 19:41:04 +03:30
SEMANTIC_SEARCH_SETUP.md semantic search dev guide 2026-09-11 08:30:48 +03:30

This is Diwan (دیوان), a fork of GanjoorService that serves classical Urdu poetry and prose. See DIWAN.md for what changed and how to deploy it. The original README follows.

GanjoorService

Ganjoor museum and ganjoor.net own backend (ASP.NET Core Web API) and frontend (Razor Pages) code

این کد وب سرویس گنجینهٔ گنجور و گنجور و همچنین کد سایت گنجور است.

فهرست توابع در دسترس

https://api.ganjoor.net

Running it locally

New to this codebase and want to run your own copy? See RUNNING_LOCALLY.md for a full step-by-step guide — cloning, database setup, and Visual Studio configuration.

The one thing that guide covers in more depth but is worth knowing up front: the production database is never published, since it contains private/user-linked data. What is published is a git repository of the poetry content itself (poets, categories, poems — allowlisted, no user data): github.com/ganjoor/ganjoor-data. A fresh local install can pull real content from there via Admin → مالی و سایت → درون‌ریزی دادهٔ عمومی (also reachable automatically the first time you run the site against an empty database) instead of starting from nothing.

The "find a poem about..." feature has its own setup guide, separate from the main one above — it needs a downloaded ONNX model and published embeddings data on top of the usual database setup: SEMANTIC_SEARCH_SETUP.md. Also has a real troubleshooting section covering the actual problems hit building this feature, not a generic checklist — worth reading before assuming something new is broken.

Changelog

The user-facing changelog shown in the site's footer ("تازه‌های نرم‌افزار") is generated and maintained from git history. See docs/CHANGELOG_PROCESS.md for the JSON format and the process for adding new entries.