I was debating between two platforms that essentially do the same thing which is take Markdown -> shiny.
Docusaurus
The first one I've used heavily for documentation purposes but rarely for blogging. It's a project from facebook called Docusaurus (Linking their beta version because its just so much prettier ).
I feel like it's more geared at writing docs than blogging, but here's the pluses.
- Write once in MD and get pretty output.
- Easy to deploy to github.io and other hosting sites.
- I supports jsx so you can embed quasi html code inside your markdown.
- Since it's a react app you utilize react component to enhance your blog.
Downsides:
- Although it has advanced features like jsx and react components, the source .md will not really look right on github for example. You'll need to generate it to see the whole picture. (Though it's the price you pay for it)
- I can't seem to manage to every spell docusaurus correctly no matter how many times I type it out. :\ personal issue.
Hugo
I haven't explored this fully but it's a markdown generator written in Go (big win for me). It's super fast though I doubt I'll need to worry about compiling 20,000 md files anytime soon.
There are also interesting tooling like Hugo Academic which provides an easy way of creating content. (Then again, VSCode works just as well for starting out )
It also seems to have a much wider array of themes to choose from, though most of them are giving me issues, likely a noob problem.
Any thoughts on these two or any other ones you'd like to toss in the mix?
Honestly the main goal is to write in .md push to some 'origin' self hosted version and able to also publish to say dev.to, medium, and other fun platforms i post on.
Top comments (24)
I created my GatsbyJS site with contenful as the CMS where I do most of article writing.
Since it's in markdown I basically copy it over to DEV and medium. Yes I should look into automating that.
I guess I haven't really thought about backup strategies but more like atleast my content will be available at 3 spots for now.
Doesn't contentful tie you to their platform? I'm always a bit reluctant to build a blog/website that rely on external services like that.
That is a healthy concern and I agree that there's a risk.
But again since my posts are duplicated onto DEV and medium, I guess that's enough tolerance for me personally.
The biggest benefit to typing on Contentful though are the integrations and versioning. You can kick off CI pipelines on certain data changes and not others, and you can maintain a dev / prod environment for just content and not tie in the codebase.
Hmm, interesting. I'll have a look. It's definitely worth another look to see what it can do. Thanks for the recommendation.
Np, it's still overkill for a single blogger but it was good practice to set it up and I like having the clear separations for data and business logic.
That's actually a bit appeal of these headless cms that are coming around of late. Most of them don't let you self host but cosmicjs and colorfulful (I think that qualifies) would allow someone to create the data model and let the shiny is be decoupled.
Different project but I was exploring headless cms like those mentioned and self hosted ones like.
github.com/ponzu-cms/
I tried Hugo out and...I forget the details, but I suspect (based on my notes from that period) it was too much effort to get the layout to resemble my main website. I also occasionally have trouble getting Go projects to work, for reasons I never bothered to diagnose.
The next attempt was Gatsby and, while I liked working with it a lot, I had a series of situations where some minor change (adding a small plugin or adding metadata) would break the blog with no way I could figure to recover, including reverting changes, and so ended up starting over every time to try to migrate my changes in. I've since been told that the cache just needs to be purged in those situations, but that advice came months too late and I don't remember if I tried that.
I ended up on Jekyll and, after two hundred posts over the course of (mostly) 2020, it hasn't given me any reason to question that decision. It's a boring choice that I could have made a decade ago, but it was the least work to put together of the systems I tried and seems difficult to break.
+1 for Jekyll. If you're interested in getting started with Jekyll, check out my post on dev.
I have spent the past decade writing on a wordpress blog because it lets me write without thinking about the backend. All I have to do is flip open a laptop or iPad and start writing. I’m not going to say that you should use the stack that I’m using but I would recommend going with whatever you feel has the least friction.
You’re writing on dev.to, right now. What’s stopping you from just writing on here and then syndicating elsewhere? I know from experience that it has great APIs.
I write here on dev.to and just use the api to show on my website. baraus.dev
Have you found the automatic connection to Stackbit? It's in beta, but it's pretty cool for a beta.
Looks interesting, takes for the note.
Control of your own data is nice. I really dislike WordPress personally but I understand that it's the standard at to speak.
I've doubt dev.to is going anywhere anytime soon but that's happened to be enough times that having a github with all my content feels like a really nice pattern.
I use zola which is pretty much similar to Hugo. It's written in Rust and there's a single binary you can use to convert markdown to static files. The single binary aspect is what attracted me (having been familiar with mdBook), so I recently changed my blog from a Jekyll theme to zola.
Initially, I found it difficult to follow along the documentation (not familiar with web stuff), but then I realized that I can just clone a zola theme I wanted and replace the sample files with my own posts. That sped up things considerably and then I changed a few css settings (with a bit of research online to understand what to look for).
That looks cool. Rust is my next language to learn once I'm done with Go. I'm a fan of both. The single binary install is a big appeal for me as well, same reason i looked at Hugo.
Thanks for mentioning this.
Thank you to everyone that's responded. This had much more feedback than I expected.
Just gathering a list here of items to look at:
Thoughts without in depth look at any of these:
I personally use Hugo on my main site - it's super fast and easy to theme and customize. You also have a lot of potential starting points through their themes, and their docs and forum are great resources. Would recommend!
Thanks. I didn't realize they had a forum, that's helpful. Thank you.
The SSG I really like is 11ty. It's so simple, but whenever I think "oh I need this feature," there's always a way to do it.
I think part of the appeal of SSG is that I really don't like JS/HTML/CSS/SCSS. I can do it.. but I really would rather pluck a nice theme from a more talented UX person and just focus on writing stuff.
Plus the ability to push a full site on github.io or any free hosting service is great. If I have to write code I'm much rather focus on writing hooks that push to steemit, medium or such.
I agree, using someone else's theme is really nice. I just like ssgs because there's no way for me to block the user from seeing the page while the server does extra processing. I should look into themes with 11ty and see if I can solve that problem for myself.
Maybe give Eleventy a try?
I use Ghost and love it. You can host yourself and use it as a headless CMS (and a GatsbyJS front end). The writing interface is the easiest I’ve used - fully Markdown supported.
Another one that you might like is the Developer Blog. It is totally free and has some nice features!