Closed kylekatarnls closed 6 years ago
Sounds good to me.
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.
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?