-
-
Notifications
You must be signed in to change notification settings - Fork 2k
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
[README] About [Implementations in other languages] section #2887
Comments
Sounds good to me. |
kylekatarnls
added a commit
to kylekatarnls/pug
that referenced
this issue
Dec 18, 2017
kylekatarnls
added a commit
to kylekatarnls/pug
that referenced
this issue
Dec 18, 2017
Finally a pull-request at #2928, some little changes since I opened this issue, I moved Ruby and Rails implementations in their framework/language sections and I also CMS plugins with wordless that enable Pug (among others) and I hope some other CMS could implement it (Maybe October CMS, I will try to take a look). So to be discussed, adjusted if needed. |
ForbesLindesay
pushed a commit
that referenced
this issue
Jan 26, 2018
This was referenced Mar 9, 2021
Open
This was referenced Mar 16, 2021
This was referenced Mar 17, 2021
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Hi,
I realize implementations in other languages are a bit of many things mixed in.
I identify different sections this should be split in:
Other language ports:
PHP: https://github.com/pug-php/pug and https://github.com/Talesoft/tale-pug that will now converge to the same rendering engine
Java: https://github.com/neuland/jade4j
Python: https://github.com/matannoam/pypugjs
C#: https://github.com/AspNetMonsters/pugzor
Those 5 aims to be compliant with pugjs specifications and support native PHP/Java/Python/C# objects (no serialization, so object methods can be called from the templates). And there are written in their target languages.
Other language equivalent:
Scala: https://scalate.github.io/scalate/documentation/scaml-reference.html
Ruby: http://haml.info/
Ruby: https://github.com/slim-template/slim
Those 3 have really different syntax. Scala is a bit closer but has different operators and include/extend different system.
Framework implementations/adapter:
I know the PHP ones:
Phalcon: https://github.com/pug-php/pug-phalcon
Symfony: https://github.com/pug-php/pug-symfony
Laravel: https://github.com/BKWLD/laravel-pug
CodeIgniter: https://github.com/pug-php/ci-pug-engine
Yii 2: https://github.com/rmrevin/yii2-pug
Slim 3: https://github.com/MarcelloDuarte/pug-slim
I guess there exist somes in other languages I don't know and I see you mentioned https://github.com/acidjazz/larpug
But this one is a bit different from https://github.com/BKWLD/laravel-pug since it use the node pugjs native package. So object are serialized to flat object. That force user to format all data deeply before sending it to the view. If I well understand it also need the 4242 port to be free to work. So I guess some users might prefer laravel-pug approach.
I also think larpug should not appear alone on the top of other languages implementation, it's more like an pugjs-to-laravel adapter for me. And if we talk about framework adapters, we should provide some guidance to the user to help him picking the package he needs, explain the different approaches and give him a larger view of existing solutions.
So the if you think it's relevant, here is what I propose to do (I can do the pull-request):
What do you think of it?
The text was updated successfully, but these errors were encountered: