About This Site

Go and Gin

This site is currently built in Go using the Gin web framework. Previous incarnations include an Express app for Node.js, an ASP.NET Web Site Project, an ASP.NET Web Application Project, and an ASP.NET MVC Project. It's pretty simple, but does require some actual coding, so rebuilding it is good practice when I want to learn a new technology.

Angular JS

The image galleries and slide shows in the trips portion of the site use Angular JS. The images are all deployed to a separate domain. Each collection of images also contains an index file with titles, the date the picture was taken, and a few descriptions. An Angular JS controller loads the index file using $http and builds the list of images, or the slide show view client side.

Bootstrap

Using Bootstrap made the styling of this site super easy. I used some of the responsive features of the framework in the trips portion of the site to hide the left nav on smaller devices. Since I'm not a graphic designer (and I'm colorblind), I used the Flatly theme from Bootswatch for the look and feel.

Automated Testing

Unit tests for the server side portion of the website are implemented with Ginkgo. CircleCI runs these with every commit. The Angular JS code is tested with Jasmine running in Karma. Unit tests for the image collection index editing app are implemented in NUnit. Acceptance tests are implemented in SpecFlow.

Hosting

This site is hosted on an EC2 instance in Amazon Web Services.

Code

The code for this site is on GitHub. The image libraries in the Trips section of the site use an index file generated by a Win Forms app in a separate repository.