I use static website for my blog. Tools I use:
* Jekyll for static site generator
* GitLab Pages for storing changes as well as deploying site and costuming domain/SSL
* Vim editor for making changes
Steps:
1. Clone existed Jekyll's files from GitLab Pages's repository into local.
2. Making changes.
3. Push the changes into remote repository
4. Custom domain and SSL.
Of course, I don't need to clone repository and custom domain again if my site has already lived. I just need to update SSL when my certificate expires. You can check this page [1] for further details.