Craig Mayhew's Personal website
Blog posts are stored in blogposts/ as json files. One file per post. Pages are stored in pages/ as json files. One file per page.
PHP is used to generate static html in the htdocs directory, sync that to an S3 bucket and then wipe cache on cloudfront.
Deployment is handled by TravisCI. See .travis.yml
I'm trialling https://app.fleek.co/ which is where the DNS is currently pointing. The AWS deploy still happens so I can switch back as a fail over if required.
partial local builds
You can specify what should be regenerated via arguments to build.php. e.g. to deploy just the blog and pages
php build.php blog pages
Or just regenerate the web pages and static content.
php build.php pages static