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

Operation Disassemble DocPad #109

Open
zenorocha opened this issue Feb 27, 2015 · 29 comments
Open

Operation Disassemble DocPad #109

zenorocha opened this issue Feb 27, 2015 · 29 comments
Assignees

Comments

@zenorocha
Copy link
Member

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 docpad/docpad#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.

@obetomuniz
Copy link
Member

👍 Challenge Accepted! No doubt this is a great choice.

@fdaciuk
Copy link
Contributor

fdaciuk commented Feb 28, 2015

Nice!! ✨ ✨
The rewriten code is already on the Github?

@zenorocha
Copy link
Member Author

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?

@fdaciuk
Copy link
Contributor

fdaciuk commented Feb 28, 2015

👍

@obetomuniz
Copy link
Member

Today or tomorrow guys! 😸

@fdaciuk
Copy link
Contributor

fdaciuk commented Feb 28, 2015

@obetomuniz 💃 💃 👍

@Nevraeka
Copy link

Nevraeka commented Mar 4, 2015

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/

@zenorocha
Copy link
Member Author

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!

@Nevraeka
Copy link

Nevraeka commented Mar 4, 2015

:+1 understood. I need to check out metalsmith 😄

@obetomuniz
Copy link
Member

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.

@Nevraeka
Copy link

Nevraeka commented Mar 4, 2015

👍 @obetomuniz

@zenorocha
Copy link
Member Author

So I just finished the Metalsmith migration. 🎉

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.

@fdaciuk
Copy link
Contributor

fdaciuk commented Apr 21, 2015

Nice work! ✨
I'll try it xD

@obetomuniz
Copy link
Member

Nice @zenorocha I'll check 💃

@obetomuniz
Copy link
Member

@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. 👯

@gpedro
Copy link
Member

gpedro commented Apr 21, 2015

@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/*/',

@zenorocha
Copy link
Member Author

yeah, which sucks, @gpedro. Could you guys send a PR fixing this?

@gpedro
Copy link
Member

gpedro commented Apr 21, 2015

@zenorocha yep :P

@zenorocha
Copy link
Member Author

Here's the work-in-progress release notes for you guys to review.

https://gist.github.com/zenorocha/9c608ab00a368db1fed4

@obetomuniz
Copy link
Member

Thanks @gpedro 🎸

@Nevraeka
Copy link

👍

@zenorocha
Copy link
Member Author

Here's a draft post (in portuguese) that should be published tomorrow:

braziljs/braziljs.org#198

Would love to see your thoughts on this.

@zenorocha
Copy link
Member Author

And here's the draft post in english:

zenorocha/zenorocha.com#23

@jaydson
Copy link
Member

jaydson commented Apr 22, 2015

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

@zenorocha
Copy link
Member Author

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.

@jaydson
Copy link
Member

jaydson commented Apr 22, 2015

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: JSRocksHQ/harmonic#140

@jaydson
Copy link
Member

jaydson commented Apr 22, 2015

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"?

@UltCombo
Copy link

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.

@balupton
Copy link

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.

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

8 participants