Go to file
Hamid Reza Mohammadi de82d2cca6
Merge pull request #508 from emohandesi/fix/public-data-import-httpclient
Fix public data import failing with ObjectDisposedException
2026-09-14 15:43:04 +03:30
docs/getting-started documents 2026-08-14 18:46:17 +03:30
GanjooRazor Fix 500 on failed login by encoding the redirect parameters 2026-09-13 22:16:28 -05:00
RMuseum Give the public data import job its own HttpClient 2026-09-13 22:16:28 -05:00
TajikGanjoor tajik recitation fix 2026-09-12 13:28:23 +03:30
.gitattributes Add project files. 2020-08-14 21:06:22 +04:30
.gitignore Add project files. 2020-08-14 21:06:22 +04:30
GanjoorService.sln refactoring 2026-07-19 16:50:22 +03:30
LICENSE Create LICENSE 2020-08-14 21:35:13 +04:30
README.md semantic search dev guide 2026-09-11 08:33:31 +03:30
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

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.