A while ago, I decided to renew my personal Website,
https://dsebastien.net. I abandoned my old WordPress blog a few years back, and
the theme was really getting old ;-) My main goal was to take back ownership of my content, which I wanted to be able to publish more easily at different locations. I’ve been blogging on Medium for a while, but my content is behind the paywall and I have mixed feelings about that. To be honest, I like getting money out of my writing and I fancy making a living out of it. But on the other, a number of you are annoyed by the paywall, which I completely understand. Now, I publish everything on
my new blog first, then I cross-post on a few other sites like
Medium,
DEV.to, and
HashNode. This way, even if my content is paywalled on Medium, it becomes freely accessible elsewhere. As an added benefit, it makes my content available for more people. If you know me a bit, you’ll guess that I couldn’t satisfy myself with a ready-made solution. As a proud hacker, I needed to make it on my own. Since I’ve been enjoying
Next.js lately, I’ve decided to use it to create my blog. Next.js is really nice, quite easy to learn if you’re used to
React, and super easy to deploy using
Vercel, which is no surprise since they’re the creators of Next.js 😅 For the blog part, I’ve taken (a lot!) of inspiration from Lee Robinson’s blog, and used Markdown with
MDX,
next-mdx-remote to load the content,
mdx-embed to embed Tweets, Youtube Videos & Github gists,
gray-matter for the front-matter,
mdx-prism for syntax highlighting, and
remark/
rehype plugins. Creating my new Website made it clear to me that Next.js really is a solid choice for modern Web apps. I think that Gatsby still has advantages in terms of developer experience (its GraphQL support is epic and the plugins ecosystem is great), but the feature set of Next.js with SSR, SSG & APIs is really cool. By the way, I’ve published an
article explaining how to configure the Apollo client in a Next.js TS application. If you’re curious, the code behind my blog is
on GitHub. If anyone’s interested, then I’ll write a blog post about how the blog works ;p
Comments ()