marionettejs.com icon indicating copy to clipboard operation
marionettejs.com copied to clipboard

Exterminate Jade

Open trezy opened this issue 10 years ago • 5 comments

Personally, I hate writing Jade. It's hard for me to read and given that HTML isn't a particularly difficult language to write, I feel like Jade is unnecessary. It's just another step in our insanely long build process.

How would everybody else feel about removing Jade and moving to using plain old HTML and maybe Handlebars or Underscore templates?

NOTE: These are obviously personal opinions. If everyone else prefers Jade I won't be offended. :smile:

/cc @jdaudier @peterblazejewicz @scott-w @paulfalgout

trezy avatar Oct 29 '15 14:10 trezy

I prefer Jade, but I can go with whatever the majority prefers. :sake:

jdaudier avatar Oct 29 '15 14:10 jdaudier

what would be the wins here? or just a rewrite to rewrite?

samccone avatar Oct 29 '15 16:10 samccone

From what I can see:

  1. Removing one barrier to entry
  2. Removing a step from our super long build process
  3. Making implementation of the Marionette framework a bit easier

In response to my own points:

  1. Jade may not be that big of a barrier to entry. I don't like using it but it didn't seem terribly difficult to pick up.
  2. Removing Jade likely won't make a huge dent in our build process, though I do imagine that shortening our build process will require lots of little enhancements like this.
  3. Implementing Marionette site-wide doesn't necessarily make sense. I could see value in implementing it site-wide to keep consistency instead of just having some sections being Marionette views and others not. This is really an argument to be had in a ticket about implementing Marionette, though.

trezy avatar Oct 29 '15 16:10 trezy

what would be the wins here? or just a rewrite to rewrite?

I think the content is the king (built upon JS documentation), the build process should be saved as much as possible for content, not markup generation. The rest should be reserved for optimizing content/markup size. If the site (or part) is switched to Mj (spa), the reserved build process can be used to generate JSON-DL schemas snippets for dynamic content (yes, for crawlers) or to provide static version of the content presented with dynamic views. a digression: at work I use Emmet, the folks would throw things at me if I start using Jade (.NET world)

peterblazejewicz avatar Oct 29 '15 20:10 peterblazejewicz

It could be worthwhile streamlining it. I'm not familiar with the site setup but I've noticed there's a handlebars template there too.

At a higher level, if we have a blessed way of writing Marionette, such as what template engine to prefer by default, then we'd be best writing the site to follow that, in my opinion.

scott-w avatar Oct 29 '15 23:10 scott-w