GitHub Pages (or GitLab Pages, if you prefer) will host your website for free. You don't even have to know HTML to make your site look fancy, just basic Markdown; GitHub will run your Markdown files through the Jekyll static site generator by default (this can be disabled by adding a blank ".nojekyll" file to the root of your repository).
Assuming you have a GitHub account and that you only need to serve static (HTML/JS/CSS) files, launching a site with your very own domain name is as easy as:
1. Buy a domain from the registrar of your choice
2. Create a repository called "<yourusername>.github.io" and a "index.md" or "index.html" at the root
3. Go to https://github.com/<yourusername>/<yourusername>.github.io/s..., select the "master" branch as the publishing source, and enter your domain (excluding the "www.") under "custom domain"
6. Go to your domain registrar's website, and find your DNS settings. Create four "A" records pointing to GitHub's IP addresses: "185.199.108.153", "185.199.109.153", "185.199.110.153", and "185.199.111.153". Create a "CNAME" record pointing "www.<yourdomain>" to "<yourusername>.github.io"
Then if GitHub decides to block/censor/ban you, all you have to do is switch to a different provider (or potentially self-host). If your registrar blocks you, you can transfer your domain to another one.