CMS pages is open source project that allows you to host and edit your own CMS using just github pages, no backend required.
CMS pages builds static json for each content that you want to host, for example a blog post, projects, employees, etc. It even supports files upload, currently only images, but it can be extended to support any file type. When the bundle is ready, it deploys it to your repository, and you can access on front end side just by fetching the json files.