[add-resource] New Theme taPMORph trapezes
tapmeppe opened this issue · comments
I would like to add my new theme to the Grav Repository.
taPMORph trapezes is an adaptation of the free template solid state in the GravCMS.
I would like to bring it into the Grav repository as a new theme: taPMORph trapezes .
Here are the project details: https://github.com/taPMeppeSols/grav-theme-tapmorph-trapezes .
@tapmeppe, I've taken the liberty to take a look at the theme you are submitting. Here are my findings...
Naming:
- I'm not really a fan of mixed uppercase and lowercase characters. It makes the name less legible.
- The prefix "taPMORph" seems redundant and meaningless to others. Shouldn't the name "Trapezes" be enough?
- I would also prefer if Open Source software doesn't add a reference to the author or company in the name. It makes names unnecessary clunky.
There are enough options in README, or elsewhere, to promote the author/company.
Test running theme:
-
It requires PHP 8+, which is ahead of the minimum required by Grav (7.3.6). This excludes quite a bunch of users. Please use the requirements of Grav:
"php": "^7.3.6 || ^8.0"
-
When starting the theme it throws an Exception:
Grav\Theme\TapmorphTrapezes::onRequestHandlerInit(): Failed opening required '/www/grav/site-dev/user/data/tapmorph-trapezes/SubscribersCustom.php'
See: /www/grav/site-dev/user/themes/tapmorph-trapezes/tapmorph-trapezes.php273
-
Testing is over...
A quick glance over the code:
- The php code comprises a whopping 1830 lines...
- The theme's blueprint.yaml contains 945 lines...
- What is the use of all this code?
- A theme is about the design/layout/look-and-feel of a page. It shouldn't require heaps of PHP.
Plugins are about extending functionality of Grav's core or Admin. If code is about extending, it should be extracted into one or more plugins. - I wonder, is this still a generic theme that is broadly valuable to the community, or is it a theme created only to serve a single use-case, being your personal or your company's use-case?
Static analysis using Psalm:
- Psalm detects that level 8 would be a suitable initial level.
- Note: Level 8 is the most loosest level... Level 1 being the most strict.
- Psalm detects 21 errors and 38 other issues using the loosest level...
In summary:
- Not ready to be released to public.
Thanks for the feedback. I will take a look at your remarks.