I occasionally get asked for more details about how my website is put together.
Until recently, this website was powered by the Ruby-based static site generator Jekyll. You can see this previous incarnation at old.timmyomahony.com. This was deployed directly to Amazon S3 and used Cloudfront to host the site, making the entire endeavour completely serverless.
While this was very convenient and low-cost, I wanted a bit more control over the content so I’ve recently redesigned and updated my site using a custom Django application. Both the back-end Django code as well as the front-end design and implementation are bespoke.
Here are some more details:
- Hosted on Linode
- Static and media files are hosted on S3 using
- All front-end files are compiled with a basic Gulpfile
- Simple deployment with Fabric over ssh. Fabric is a little bit dated (no Python3 support for example) but it does the job and makes deploying an update simple and straight forward.
- Some useful Django apps that I’m using are:
- It’s deployed with
Source code, license and usage
I also occasionally get inquiries regarding the codebase, and whether or not it is available to use.
Currently, my code is privately hosted on Github and is not open source. This means that it can’t be re-used :(
As a proponent of open source software, here my reasoning for this:
A lot of time and thought has gone into the design and development of this website. As an independent software developer, my portfolio is what separates me from the competition — it’s my professional shopfront. Furthermore, as a completely bespoke design and codebase, it’s also a reflection of the quality of work a client can expect if they engage me in a project. For these reasons I’m reluctant to entirely open source the codebase.
That said, this is obviously a website … the HTML, CSS and JS is available. I’m flattered if you want to use the general design and layout in your own portfolio as inspiration but please don’t
wget my entire site wholesale.
I’d be interested to hear what you think about this. If you believe that this is a foolish standpoint, or have any feedback, please get in touch with me at firstname.lastname@example.org to discuss. Furthermore, if there’s something on this site you like and you want help doing something similar, please let me know and I’ll try help out.