Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Many broken themes (23 of 128 WORK with pelican 4.2.0) #677

Open
someone-somenet-org opened this issue Apr 19, 2020 · 7 comments
Open

Many broken themes (23 of 128 WORK with pelican 4.2.0) #677

someone-somenet-org opened this issue Apr 19, 2020 · 7 comments

Comments

@someone-somenet-org
Copy link

someone-somenet-org commented Apr 19, 2020

I just tried to take a look at all the themes ...
Of all 128 themes here, only these 23 seem to work with pelican 4.2.0. :/

Could you consider moving old/unmaintained themes to some subdir?

  • aboutwilson
  • attila
  • bootstrap2
  • bootstrap2-dark
  • franticworld
  • martin-pelican
  • materialistic
  • mnmlist
  • monospace
  • new-bootstrap2
  • nice-blog
  • nikhil-theme
  • nmnlist
  • octopress
  • plumage
  • relapse
  • subtle
  • svbhack
  • taman
  • tuxlite_zf
  • voidy-bootstrap
  • w3-personal-blog
  • zurb-F5-basic
@someone-somenet-org someone-somenet-org changed the title Many broken themes Many broken themes (23 of 128 WORK) Apr 19, 2020
@someone-somenet-org someone-somenet-org changed the title Many broken themes (23 of 128 WORK) Many broken themes (23 of 128 WORK with pelican 4.2.0) Apr 19, 2020
@kakila
Copy link

kakila commented Jun 1, 2020

This would be really needed, I spent a lot of time testing before finding this issue

@KeithCu
Copy link

KeithCu commented Mar 27, 2021

It is amazing this issue doesn't get fixed.

@dakshsriv
Copy link

Apparently, a 24th theme has broken down. twenty-pelican-html5up has worked horribly: #10 on twenty-pelican-html5up.
Also, it's not pelican's fault that some themes are sub-maintained. It's the theme makers' fault.

@someone-somenet-org
Copy link
Author

someone-somenet-org commented Aug 9, 2021

Also, it's not pelican's fault that some themes are sub-maintained. It's the theme makers' fault.

true, but it looks bad for pelican to host seemingly broken templates giving pelican as a whole a little dead feeling.

It would - for example - be great to get the templates into versioned directories. That way, if you just care about previewing/testing the template, you can downgrade pelican. And you would not have a large list of dead templates, just a versioned list.

edit: also, imho dont host the templates themselves, just links to their repos or add them as branch-tracked subrepos.

@maphew
Copy link
Contributor

maphew commented Dec 28, 2022

The picture is a lot better at end of 2022 but there are still far too many broken themes at the top end. Current stats in my testing are 73 working and 56 not; listed here (note: short term link). I'm happy to put some effort at re-arranging, just let me know what I could do.

@leekimber
Copy link

leekimber commented Jan 9, 2023

Following the link from #645... Thanks maphew for surveying the themes. It's an interesting read. It formalises what I found last year when I started looking for a small file-size, dark/light mode-supporting theme that was as attractive as the Alchemy (bootstrap) theme.

I concluded there was no suitable theme and that I would have to create my own.

Being a non-web developer pelican user, the complex of problems I then encountered are:

  • Web UI design has moved fast into semantic HTML, multimedia content (HTML5 + media controls) - which are challenging for markdown in its original form as a writer's tool.
  • Web UI design talent has adopted css toolchains and js toolchains - which increase the learning-load for pelican python users like me.
  • Web UI design has gone full-on responsive (smartphone as primary client) which means much time spent sifting through existing pelican themes to find decent responsive techniques to copy.
  • Web UI design has morphed around the expectations of smartphone users (images and icons over text for link identifiers). This reflects changes in user expectations for style control and navigation that are not reflected in many themes.
  • Web UI design has gone Progressive Web App (PWA), which is easily achieved in pelican but not widely documented. It also adds extra thought at design time and management considerations to your site workflow after first build. Which may or may not be appreciated by non-web UI focused pelican users.
  • Designing beautiful reading experiences seems to have lost out to designing interactive web apps generally. Read Jeremy Keith's The State of the Web if you are not familiar with the problems this is causing. Or Minimal CSS Frameworks.
  • Pelican grew so popular so fast that Jmeyer et al couldn't possibly document answers to all the use cases and workflows that users were asking about.
  • Web UI design changed so fast that jmeyer et al couldn't possibly answer or document answers to all the theme questions that arise.
  • The separation of themes into two collections may not have helped solve all of the above complex of problems.

This one is hard to capture but it seems to me an invisible accident occurred. I think jmeyer et al created us a great python back-end and offered us starter themes and a chance to add more themes. Which people who were not web designers by profession or inclination did. But while they were doing it, the web world moved on a long way in multiple directions - some of them even damaging to web users - leaving pelican themes behind. So today we sit amid quite a lot of abandonware, non-functional and old fashioned themes.

There are probably other issues too but even I'm tired of reading me.

So, quoting Alex Ivanovs in Minimal CSS Frameworks:

a framework like Tailwind CSS or Bootstrap is not intended to be minimal or lightweight by default.

And:

I love the idea of using a framework that gives me quick access to pre-defined layouts and additional style components. All without requiring me to do code gymnastics to get the design working across multiple devices.

And:

Last but not least, it's a lot easier to add custom CSS to a small framework base because of no class interference. When you don't have a thousand different classes depending on one another, it's much easier to add custom CSS snippets you find in tutorials or on sites like CodePen.

Yep!

Recognising that what I want in a pelican theme may be the same as what Alex Ivanovs wants from a css framework but not the same as other pelican users want, here's a list of what I want in a pelican theme and its css:

  • Required: As beautiful as Alchemy. Or, at least, as easy on the eye.
  • Required: Device-determined light mode or dark mode plus easy user over-ride. Like the great user experience jenil demonstrates with Chota. See that little 'star' at the bottom right?
  • Required: Respect users with old browsers. As in: fail with content legible not with an 'upgrade your browser' prompt.
  • Required: Minimum web UI skills required to tweak it. I'm not a designer but I can tweak things.
  • Absolutely required: No web UI tools or toolchain required to tweak it. Just .css and .js files laid out on tinkerable individual lines.
  • Required: Tiny .css file.
  • Optional: No, or small, .js file.
  • Optional: PWA support.
  • Optional but please...: Documentation for it and its relationship with pelicanconf.py variables.
  • Optional: Demo pages that show what it can do, not demo pages that show how you abandoned pelican for next.js or gatsby's themes.

I've been trying to solve these problems by:

  • Experimenting with lightweight css themes to find one that a non-UI designer can tweak into the above requirements within one human lifespan.
  • Continuing the PWA experiment I began with Alchemy. (Don't use that code. I need to clean my latest version and push it, plus finish my documentation for it.)

I've tried a lot of alternative CSS files. I quite like:

I started to rework the existing Bulma-based pelican themes and would have continued with that if they didn't make images and videos even smaller on mobile than they already are. And if they met my dark/light mode requirement.

I've tried many more than the above. I'm currently focused on Chota because it looks as though I'll eventually get it close to Alchemy's layout. But with tiny Chota filesizes and jenil's understanding of smartphone users' mindsets.

It's not entirely theme related but I'm also writing a markdown pre-processor that lets me research and write in markdown as a writer in a multimedia and HTML5 world. Which means it:
- recognises multimedia refs in markdown and wraps them in HTML5 tags
- recognises the writer's intention to caption and acts accordingly. Ie it wraps the caption and its associated media ref in <figure>+<figcaption> tags.
- applies <figure>+<figcaption> tags to blockquotes.

Whatever I eventually come up with for a theme and for better markdown-handling, it won't solve the theme problems maphew identified.

Given that the web UI design world is waking up to the problems its rapid advances in coding and toolchains are causing web readers, web content creators and web devs, perhaps now is a good time to learn from the web UI world-of-pain and take pelican's themes down a different path.

I wonder if pelican themes management needs an approach that can create and maintain a base set of themes that are:

  • modern in look
  • modern in functionality
  • and respect device trends (smartphones - even though their scrolly keyboardless interfaces are appalling).

Perhaps it might work to take the best in navigation and functionality trends in HTML dev and multimedia support and require them to be in the core set of themes but not let the core set of themes become dependent on library fashions (bootstrap, jquery, css classes (and their conflicts), or whatever).

I'm not saying: don't have more complex themes. I am saying: perhaps we need to work towards creating and maintaining a base of modern, minimal, tweakable themes that work regardless of what css or js or toolchain is the fashion du jour. And providing support for them. While encouraging users to add to a separate set of more complex or difficult themes for which pelican provides no support. Perhaps create a distinctly separate but federated area for variant theme contributions and themes based on complex or fashionable frameworks.

I don't know where jmeyer's skill-boundaries are but I do know that work takes time and his work seems to be in providing a fantastic python back-end. Meanwhile, the web UI world has added workloads to theme design - and even to markdown rendering requirements - that no-one could be expected to keep pace with. So can we design a future for pelican themes that takes these facts of life into account?

I don't think this work can be done entirely by non-UI folks like me but I'm happy to add in my code (chortle) to that effort or some variation of that effort.

Thoughts?

@maphew
Copy link
Contributor

maphew commented Jan 10, 2023

Thoughts?

Oh yeah, way too many to write out. Lot of affirmative head nodding with regard to the goal of a minimal css starting point yet also friendly for middling html-css knowledgeable folks to build on. Thanks for sharing your extensive thoughts. More later as I go through and digest them.

Also see https://github.com/mosra/m.css, which is a highly refined pelican theme with many of these ideals at heart. It's not referenced in the pelican-themes repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants