Dream Dogz website
Business website for Dream Dogz Positive Training, a dog training service in Melbourne, Australia
This is my first attempt at company website design and implementation. The goal was to polish the looks, content and functionality of an existing WordPress website. This was also a great opportunity to improve my knowledge of Gatsby.js.
For those not familiar with it, Gatsby is a free and open source static site generator. In my case it proved to be a valuable ally in the creation of a fast and modern website. One can easily tell that a lot of thinking has been invested on its architecture and design [1]. For me, its greater advantages are
- Emphasis in website speed
- A rich ecosystem that is growing day by day
- Usage of markdown makes content writing easy and promotes presentational consistency
- Easy integration with Netlify CMS, a modern and versatile CMS for static site generators
The learning curve was a bit steep initially, and sometimes it felt to a bit of an overkill for a website featuring 20-30 pages. Eventually it was worth it: as soon as you get the hang of it, implementing fast websites that adhere to best practices becomes a piece of cake. Being satisfied with the results, I also used Gatsby for the website you are reading right now.
Another key technology used was Bulma, a CSS framework. The plethora of styling options for React websites/apps (css-in-js, styled components, sass and others) makes choosing the best for your project a non-trivial task. I am glad I used Bulma because
- The default styles look great out of the box
- Style customization is easy and well abstracted
- It is a JavaScript-free framework, which in my mind makes sense for styling a React project (keeping all functionality in the React components)
- Excellent documentation
Finally, the website is deployed in Netlify. I have used AWS for other projects, and its value-for-money and availability of options is incomparable. Nevertheless, I often feel that simple tasks become complicated there, especially the first time you do them. Netlify has an amazing UX, and its free tier seems to be enough if scalability is not a concern.
[1] For those interested in Gatsby's inception and architecture there is a Software Engineering Daily episode with Kyle Mathews, the framework's creator