conf-boilerplate
conf-boilerplate copied to clipboard
Operation Disassemble DocPad
DocPad made us possible to build an amazing project that helped many many events around the world.
It proved that a static generator can increase a developer's productivity when building small to complex applications. Since https://github.com/docpad/docpad/issues/821 we've been thinking about moving to a different solution for a bunch of reasons.
That's why we're announcing a big rewrite using another static generator (obviously in Node) called Metalsmith. We're also switching template engines from eco to handlebars. Our hope is that this will make it even easier for you to use and contribute.
:+1: Challenge Accepted! No doubt this is a great choice.
Nice!! :sparkles: :sparkles: The rewriten code is already on the Github?
Not yet @fdaciuk, @obetomuniz is working on it and will publish it in a separated branch in this repo.
@obetomuniz could you let us know when you push the code to this new branch?
:+1:
Today or tomorrow guys! :smile_cat:
@obetomuniz :dancer: :dancer: :+1:
readthesource.io started using Hugo. Have you looked into it? One of the things we liked about it was that it doesn't get in the way of pluggable architecture and advanced code on top of the base templates. The real killer feature was that it builds super fast but it does require GoLang.
http://gohugo.io/
It's kinda hard for us to use a language other than JavaScript since this project belongs to BrazilJS foundation and we encourage JavaScript development. But that was a good tip @Nevraeka, I'm going to take a look on that. Thanks!
:+1 understood. I need to check out metalsmith 😄
Cool !!! I will test the Hugo Generator too, because in addition to love with JavaScript, I am also a little adept at GoLang, thank you for the tip @Nevraeka . But in the case of conf-boilerplate is what @zenorocha said.
:+1: @obetomuniz
So I just finished the Metalsmith migration. :tada:
Before merging it to master, I would like gather some feedback from you guys. Please check the metalsmith branch and let me know what you think.
I'll be working on a migration guide in the meanwhile.
Nice work! :sparkles: I'll try it xD
Nice @zenorocha I'll check :dancer:
@zenorocha I tested the branch and detect a problem with npm run watch
command . The command don't work in the file change, just in the first time that I execute.
The remaining of migration is running perfectly. :dancers:
@obetomuniz the watcher will only work in the folder src/documents https://github.com/braziljs/conf-boilerplate/blob/metalsmith/metalsmith.js#L14
cc @zenorocha
workaround
Change pattern to:
pattern: '../../src/*/',
yeah, which sucks, @gpedro. Could you guys send a PR fixing this?
@zenorocha yep :P
Here's the work-in-progress release notes for you guys to review.
https://gist.github.com/zenorocha/9c608ab00a368db1fed4
Thanks @gpedro :guitar:
:+1:
Here's a draft post (in portuguese) that should be published tomorrow:
https://github.com/braziljs/braziljs.org/pull/198
Would love to see your thoughts on this.
And here's the draft post in english:
https://github.com/zenorocha/zenorocha.com/pull/23
Metalsmith is great. But, as one of Harmonic's maintainers, i need to say we'd love to have Conf Boilerplate as use case. I'm pretty sure you guys would find a lot of bugs and feature requests, and it will be awesome.
That said, is up to you guys decide. Help and evolve a home-made (by brazilians) static site generator written with the modern JavaScript (ES6/ES7) or just use an already solid solution.
AFAICS, Conf Boilerplate project was inactive for a while, so there's no "urgency" on that migration.
//cc @zenorocha @ultcombo
I took a look on Harmonic before trying Gulp and then Metalsmith for this. There are some reasons why I made the decision to not use Harmonic:
- It's a pretty new project, which means there are many features lacking like partials, nested templates, among others.
- Test coverage is poor.
- There's no plugin ecosystem around it.
Although it's nice that is written in ES6, that doesn't really matter for the API consumer. This "Operation Disassemble DocPad" starts with Conf Boilerplate but involves few other projects which are much more critical.
I'm really excited for Harmonic's future, mostly because I trust in the developers behind it and I'm following its evolution for a while. But even though we haven't made updates in a long time, people still use this project a lot so it's important to deliver a reliable solution.
It's a pretty new project, which means there are many features lacking like partials, nested templates, among others.
The fact it is a new project, in my vision is a benefit.
Harmonic templates is built on top of Nunjucks, so yes, Harmonic have partials
and nested templates
support.
Test coverage is poor
I agree.
There's no plugin ecosystem around it.
We're working on it: https://github.com/JSRocksHQ/harmonic/issues/140
This Kyle Simpson's (@getify) tweets reflects what i think:
https://twitter.com/getify/status/585667429080162304
if more people spread out attention across a wider range of signals, instead of clamoring to the popular stuff, more quality would spread
https://twitter.com/getify/status/585668150622035968
instead of "we picked X b/c it's so popular and awesome", how about "we picked Y b/c it wasn't getting enough attention"?
Test coverage is poor.
True, there are only smoke tests so far. We are welcoming PRs in that regard. Though, I'm personally focusing on pushing programmatic APIs (both high and low level) before investing time on writing tests. This will make writing tests much easier and effective.
For what it's worth, 2016 saw a large maintenance effort on the Bevry projects - and work is underway at getting those changes in DocPad. There is a roadmap at https://bevry.me/patreon we are working towards - but there is nothing but free time right now on an uphill battle of latest trends.
I've looked at many different SSGs over the years to see what trends are unfolding, and still really admire DocPad.