The prototype is now using the majority of components we had before and project pages now work with any category. Some examples:
Colors, icons, text, news are taken from the respective category field on discourse.
Page templates load successfully, and faster than before.
About 50% of components are working in the new template, 75% of those are lazy loaded to improve speed.
Configuration of templates is much simpler, XML tags are only required when you need to display a specific component.
Page thumbnails (on the project page) can be set using the custom thumbnail field when you edit the topic title on Discourse.
Page summaries are parsed and displayed when you hover over a site page on the category page.
UI is standardised across all pages.
The look of the default page template is very minimal - this is intentional. I am avoiding styling decisions (and feedback) until the logic side is complete.
When that is done we can discuss what is missing design and progressively enhance it (and maybe even get UI/graphic designers or artists to contribute). The idea is that with no configuration, you have a decent template to start with.
I already have planned a configuration parameter for narrow and wide layouts.
An issue we’ll be facing in a few weeks when this is ready will be regarding keeping content organised coherently.
Explanation: Each project page will eventually display conversations, events, campaigns, media and whatever other data we collect in that category.
Pages naturally fall into that field, but we have created a ‘summary websites’ category for pages. This is not optimal in some cases :
We end up with two URLs for a project. For example, for Scifi Economics:
The first is our web content category, the second is the ‘canonical’ SF Economics category. This is user unfriendly and confusing.
If we want to unify two categories, we’ll have to combine bits of data from both categories, which is suboptimal in terms of speed and UX; it means spaghetti code to deal with categories that do not have a ‘mirrored’ category here.
Some webkit pages already exist in other categories and should not be moved, for example the witnesspedia pages need to stay in the witnesspedia category as they are relevant to the contributors there.
Keep in mind that:
Sites, with this new codebase, are readable markdown topics on Discourse. In many cases, they serve just as much as readable content on the platform as they do for the webkit. We may have JSON topics, but they stay siloed away in a sandbox category.
If we want to create a project separate from the other categories, there is nothing stoping us from using the ‘summaries’ category to do just that. Projects pages work with any category, including all subcategories in this one, so nothing will change on this front.
It’s not a huge problem at the moment as we are in the development stage, but something that needs clarifying before we deploy dozens of pages.