-
-
Notifications
You must be signed in to change notification settings - Fork 10.6k
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
Theme feature detection #4319
Comments
This issue can be closed in favour of the entire gscan repository: https://github.com/TryGhost/gscan gscan is our tool for checking & validating themes. It needs a lot of love, but its current form lives at http://gscan.ghost.org and is used when uploading themes inside of Ghost to ensure they don't have any fatal errors in the templates. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
The Ghost theme API moves pretty fast, pretty much every release includes some sort of change, and we need a way to make it clearer what version of Ghost a theme will work with.
Rather than using a version number, and depending on theme developers to provide an accurate Ghost version number which their theme works with, let's do this in a really smart way, and actually detect which features a Ghost theme is or isn't using.
Some features being missing constitutes an outright error (like no
{{asset}}
helper) some might represent a warning (use of the deprecated features) and some might be a positive (like themes already supporting{{image}}
). Therefore I think we can do something really interesting with a simple set of tools to detect use of helpers and other things, a set of rules and converting the information into a standardised output that we can generate and display for any theme.The idea here is to do this as an independent npm module, which can be a dependency in Ghost (used to check a theme when it is activated), but also offered as a web UI where theme developers can check their theme (a bit like http://package-json-validator.com/), and then it can also be included in or used by other sites and projects.
My goal here is to make information about theme features, compatibility and quality far more transparent, so that we can give our users a far better experience when using 3rd party themes.
I've been working on this just a little bit, and once I've finished laying the groundwork I'll link this to the repo and start opening issues there to improve it, so people can get stuck in improving it if they're interested.
Features to be detected:
The text was updated successfully, but these errors were encountered: