WallarooLabs / wally

Distributed Stream Processing
https://www.wallaroolabs.com
Apache License 2.0
1.48k stars 69 forks source link

Migrate the book from gitbook to... #2348

Closed enilsen16 closed 5 years ago

enilsen16 commented 6 years ago

There are some issues with gitbook (mainly that I think you'll no longer be able to self host it). Since we use hugo in other places, it makes sense to use it for the book as well. Though the problem with hugo is that themes need to be checked in as git submodules.

theme options:

We can use Algolia's DocSearch for searching documentation.

Another option could be https://docusaurus.io/en/

SeanTAllen commented 6 years ago

There's a Gitbook hugo theme on Github. I can't find the link at the moment but I sent it to @JONBRWN a while ago, he should have it.

JONBRWN commented 6 years ago

@enilsen16 here's the Gitbook theme for Hugo: https://github.com/blezek/bookish

aturley commented 6 years ago

I'd like to see an enumerated list of why we think we need to move. I remember when we chose gitbook there were some complaints about it and we decided to use it anyway. Are there new issues that have come up since then? Is it only the self-hosting issue? What criteria to we want a new solution to meet? How will we evaluate the options?

SeanTAllen commented 6 years ago

Many @aturley. Amongst them:

enilsen16 commented 6 years ago

Unrelated side-note, Algolia has crawled our current documentation. The configuration is available here: https://github.com/algolia/docsearch-configs/blob/master/configs/wallaroolabs.json

enilsen16 commented 6 years ago

TL;DR: After looking into Hugo more I think in the long run it be just as problematic as Gitbook. After looking at the options I think I prefer docusaurus. We can always get hacker news or lobste.rs's opinion too.

Hugo


Pros:

Cons:

Not to say there aren't projects using Hugo for docs though. For example:

Personally I think Docusaurus is a better option. For the reasons below.

Docusaurus


Pros:

Cons:

Example:

Docusaurus also dogfood themselves: https://docusaurus.io/


Both options can include the ability to version documentation as well, which is currently something we do not have.

WDYT?

cc/ @rachelblasucci @JONBRWN

SeanTAllen commented 6 years ago

I think we need to step back and enumerate what we are looking for:

Examples...

Nice to have:

What else am I missing? What do folks think isn't needed from the list.

enilsen16 commented 6 years ago

Other examples:

Additional nice to haves:

enilsen16 commented 6 years ago

WRT the Hugo and/or Docusaurus discussion:

I'm concerned that we will end up maintaining a custom theme for Hugo to get the documentation-like features we want. Which is going to only make maintainability harder.

There there is no perfect solution. I just feel something where the default theme includes the features we want, will in the long run require less work.

It's probably best to just bring this up in the next sync as I feel like we could go back and forth forever.

SeanTAllen commented 6 years ago

From a branding perspective, we are probably going to end up with a custom theme. So, it's not something that concerns me a lot.

enilsen16 commented 6 years ago

From a branding perspective, we are probably going to end up with a custom theme. So, it's not something that concerns me a lot.

Sure. I guess in my mind changing some colors is difference than maintaining a entire theme. Then again if this was the plan all along, I'm fine with Hugo.

SeanTAllen commented 6 years ago

I'd like to see how options stack up against requirements.

JONBRWN commented 6 years ago

My thoughts:

I don't love Hugo as the replacement choice, but it's a better option than Gitbook. The theme management isn't that big of a problem, we've had no issue with the blog and our custom theme. We've also had everyone run it locally without a problem.

I wouldn't rely on the NodeJS dependency of the MonitoringHub in regards to Docusaurus, there was enough resistance on the install of that plus Erlang/Elixir that we decided that a Docker image to do the building was the best option. Although handy, it is another thing to maintain.

I still think there might be some value in reaching out to the dev community via HN/Lobsters to see what people are currently using and what they like/dislike about it.

pzel commented 6 years ago

A bit late in the game, but I wanted to share my faded-yet-positive recollections of using readthedocs for plain-vanilla open source documentation.

enilsen16 commented 6 years ago

I also forgot to mention, It's quite possible that we end up going with two solutions. One for docs and another for more book/tutorial like walkthroughs...

enilsen16 commented 6 years ago
Hugo Docusaurus ReadtheDocs
Easy to theme
Maintainable
Uses Markdown
Searchable
Works well offline
Easy Installation
Works with Netlify
Template Variables
Versioning

The top row is the options we are considering and the first column is our requirements. Please let me know by 9/12 if you have thoughts on other options or requirements that I am missing above.

jtfmumm commented 5 years ago

@SeanTAllen Can we close this?