Thread:がか/@comment-27407250-20180110180422/@comment-26154973-20180110214811

If that data can be used by (required for) n pages (clients), then for n > 1 data modules are better, as the data is not just separated (from the rendering code, be it in templates or in Lua modules), but also centralized. If you want to add another client, you just add it without touching (duplicating) the data, or if the data is changed, you change it without touching (updating duplicated data) all clients.

The core system was implemented by Ckwng somewhen in 2015. The idea is to map game objects' data into data modules, so it can be used by arbitrary number of clients, like there can pages with infoboxes (categories, etc.) for each object, or pages with tables that compare different objects, or generated categories, etc.

Another method is to store data in pages and have a way (like DPL extension) to get that data into Lua from those pages directly, for other clients to use it that way.

Yet another method is to use external tools to generate and update pages (that is, to move data and rendering code outside, to some extent). Or at least use external tools to generate data modules (from pages or not).