I'm starting to build my own SaaS soon which will be a React SPA dashboard, but alongside it, I plan to create a landing page with a blog for marketing/SEO purposes.
I can't decide between WordPress, Webflow, a custom-coded webpage with Next.js or Gatsby, or even pure HTML/CSS/JS.
What tech stack would you recommend me to build a landing page with a blog and other common pages (having in mind performance, SEO, CMS for dynamic content, etc.)?
You are already plaining to implement the dashboard in React SPA, why not to stick in React framework for landing/blog? So, you can easily reuse some code between the dashboard and the landing page.
Not only you can resuse the code, you can also reuse the configuration, less context switching. One language, one framework, one tool, one deployment setup, etc. for landing page and dashboard. So, I built a Next.js Boilerplate Template which use Next.js for landing page and for the dashboard.
I'm a Next.js fan but I think Gatsby can also do the work. With Next.js you can definitively build a landing page or a blog without any issue. You have everything you need for performance, SEO, CMS, etc. and don't rely on GraphQL like Gatsby (it can be an advantage or disadvantage).
I use BlogStatic on a subdomain to make things as quick and easy as possible.
I write all pages in Markdown and use a Python script to generate the website. It's a bunch of spaghetti code but it works and I don't want to spend time cleaning it up. I use it since I already have it but if I was starting over again I would just stick with Wordpress or Webflow because it's faster to build a website that way. I want to build a product people love and pay for, not wasting time designing a website I don't even know will exist one year from now.
I personally went a very big way down the fancy paths of building your own but ultimately fell back to Wordpress for my marketing site. I think it's just too easy and quick for all the super basic stuff you really need.
And elementor and other builders are so good these days you can actually make some really nice custom designs still.
I recently started to use Nuxt.js (Vue framework) in combination with different modules to create a landing page for my side project.
There are numerous modules to support you with creating a landing page for blog/marketing/SEO purposes. Like,
An alternative to the above could be to use a headless cms, such as Prismic, and connect that to your Nuxt frontend. If you would like a web app to manage your content.
Also, there is a Nuxt theme to create really sleek documentation.
I recommend Gatsby, it's a bit of a learning curve but Gatsby is great for SEO and blog content. Unlike CMS software like WordPress it doesn't output a bunch of garbage code either.
I'd recommend hand-coded HTML and CSS sites with ParcelJS. I use it for my local clients landing pages. ParcelJS give you out of the box image and asset optimizations and the posthtml plugin to make your HTML dry. You almost have to try to not get 100/100 lighthouse scores.
For my blog I use NuxtJS, mainly for the markdown blog functionality. It's still gets good performance but not perfect like Parcel due to the compiled size of Nuxt/Vue. But if you do plan on doing a blog, I would recommend it or NuxtJS instead.
I highly recommend https://docusaurus.io
We use is at https://scrapingfish.com for landing page, documentation and blog.
I built https://versoly.com/ for this.
Comes with a landing page builder. Pages are built using Tailwind. The editor comes with a code editor as well so you can just hop in and don't need to waste time learning the UI for basic things.
It also has a CMS with blogs, knowledge base, changelogs and careers if you need to hire.
Looking at adding integrations, case studies and more CMSs to help you grow faster.