Full Stack Developer
I am still writing case studies and finishing some open source projects.
Check back again soon.
Once the code has been updated, has been linted and is accompanied by tests, it is committed to Github on a release branch.
This triggers a Github Action workflow, which pulls an NodeJS environment image and compiles the Next.js application.
Once the application has finished compiling the Serverless Framework CLI compiles a CloudFormation change list and commences deployment to my AWS environment.
All changes are atomic, so if any issues arise it gracefully will roll back without interruption of service.
Serverless publishes the changes. Dynamic Pages and API Route functions are transformed into lambda functions or, if possible, statically generated and published to an S3 Bucket, for improved performance
CloudFront is updated, and caches are invalidated. The website should now be ready to be visited.
A user requests either a page or an API route. The request goes to CloudFront where it either serves a cached copy of the response or sends it on to Lambda@Edge.
Lambda@Edge computes the response, lightning fast, at a server close to the geographical origin of the request, ensuring rapid response, and saves the response to the cache on CloudFront.