Go to the page for any ghazal or qaṣīdah on Ganjoor,
and replace .net
with .fly.dev
to see a pretty-printed version of the poem.
For example, https://ganjoor.net/hafez/ghazal/sh407 becomes https://ganjoor.fly.dev/hafez/ghazal/sh407.
The developers at Ganjoor were gracious enough to add this functionality to the site itself. You can activate it with a button labeled numā-yi chāpī. I'm continuing to maintain my service so that I can improve it over time.
NB: This is the successor to an earlier mini-project, ghazal-typesetting, which may still be of interest to some.
This is basically a little Rust application, built with
Actix Web. It takes a Ganjoor URL, fetches the relevant
poem through their API (using the
reqwest crate), and constructs a new
HTML document with Pandoc—which is a required
external dependency. Note that we're asking Pandoc to bundle in head.html
,
which in turn references styles.css
and pretty.js
. So those files also need
to be present. The application listens on localhost port 8080 and could be put
on a server behind a reverse proxy, with a CDN for caching, etc. Pretty
straightforward.