I think it would be better to make it an attribute of backend.common.page.BasicPage:

Because currently, you wrote "from paperwork.backend.common.page import DummyPage, THUMB_WIDTH, THUMB_HEIGHT" in the frontend --> you end up using "THUMB_WIDTH" & "THUMB_HEIGHT" as it in the frontend.

If you make it an attribute of BasicPage, in the frontend you can do "from paperwork.backend.common.page import BasicPage", and then use BasicPage.THUMB_WIDTH and BasicPage.THUMB_HEIGHT. It would give each time a little more context regarding where THUMB_WIDTH / THUMB_HEIGHT come from.

Also, "THUMB_WIDTH/HEIGHT" was meaningful in the frontend because it's the only thumbnail size we use. But in the backend, as you probably saw, the function get_thumbnail() let the caller choose the thumbnail width. --> I think you should rename them "RECOMMENDED_THUMB_WIDTH/HEIGHT" (or something like that)