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

Extract "default" template languages (Nunjucks, Liquid, markdown) to plugins #3647

Open
uncenter opened this issue Feb 3, 2025 · 1 comment

Comments

@uncenter
Copy link
Member

uncenter commented Feb 3, 2025

...like the more esoteric templating languages that were moved out of core to plugins with v3, Nunjucks and Liquid should also be plugins - so that I, someone who uses neither of those two (I use Vento), am not installing an extra 3MB every time.

Originally posted by @uncenter in #3587

As suggested by @Ryuno-Ki, opening as a new issue for this discussion.


Since Eleventy tries to remain unopinionated, I think moving these template languages to separate plugins in https://github.com/11ty/eleventy-plugin-template-languages would make sense. If it is felt that including (a) default template language(s) is important (i.e. new users, simplified configuration/setup - valid points), I would propose splitting Eleventy into two packages; @11ty/core and @11ty/eleventy, the former being a more barebones scaffolding tool and the latter coming with more defaults and reinforced structure. Just a thought :)

@Ryuno-Ki
Copy link
Contributor

Ryuno-Ki commented Feb 4, 2025

Thank you 🧡

I think, one of the beautiful aspects of Eleventy is the support for multiple template languages (as well as their mix-and-match). This eases the transition from other systems to it (Jekyll using Liquid, Python with Jinja2 which is almost identical to Nunjucks etc).

On the other hand there's this argument that by bundling all those template language engines the package download size goes up.

Splitting it up might be a good strategy. In the past, several pieces have been moved into plugin land.

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

2 participants