Projects

A website for a wedding stationer and illustrator. The site also provides a couple of contact forms.

The front-end is a static Gatsby JS React site. Lots of images are used in the site due to the graphical nature of the business. Gatsby JS's image plugin provided an easy way to resize, crop and compress images. It also provides support for lazy-loading images on scroll. This ensured the site remained performant. Gatsby JS also handles "non-functional" features like site maps, favicons and Google Analytics.

The front-end is styled using Tailwind CSS. This provided a really fast way to get the site built. Small React components provide the semantic meaning that is lost when using utility-first CSS frameworks. All of the styling, markup and functionality is in the same JSX file which makes development easier.

The site's front-end is hosted using AWS Amplify static hosting, which is a wrapper around AWS CloudFront and AWS S3.

The contact forms are implemented using a number of AWS services. The browser accesses an AWS API Gateway via the AWS Amplify JavaScript SDK. The gateway invokes an AWS Lambda function that places a message on an AWS SQS instance. Another AWS Lambda function then polls the queue and uses AWS SES to send an email.

The code is hosted in AWS CodeCommit. Continious deployment is implemtented using AWS Amplify. The domain and DNS is managed via AWS Route 53.

 JS Gastby Tailwind CSS AWS Amplify AWS Lambda AWS API Gateway AWS SQS AWS SES

Classes that help you test the relationships between your Akka actors in both unit and integration tests. For more information please see my blog post here.

 C# Akka

A class to randomly generate values. Useful for unit tests. Powered by AutoFixture. Can be configured per instance or globally.

 C#