Site logo


  • Multiple entry points in Create React App without ejecting

    June 02, 2020 | 6 min read

    I was recently tasked with building two applications in parallel. The first was a commercial web application, and the second acted as a platform to A/B test content messaging, page layouts, and so on. To be ruthlessly efficient, I wanted to…

    Read more →
  • Building a responsive camera component with React hooks

    November 07, 2019 | 13 min read

    I was recently tasked with building a front-end camera component that allows users to upload images of their identification cards to a back-end service. In this post, I’ll demonstrate how I created the component by explaining how to…

    Read more →
  • Create a custom modal in React with context, portals, and hooks

    July 16, 2019 | 4 min read

    Modals are a great way to display information on top of your application, and usually used for notifications, alerts, or standalone dialogs such as register and login forms. Before jumping ahead and building a custom modal I’d suggest…

    Read more →
  • Adding state to Storybook in React

    June 29, 2019 | 3 min read

    Storybook is an incredible open-source sandbox for developing UI components in isolation. One of my current projects is a large multi-screen form with various controlled components that rely on their parent container as the single source of…

    Read more →
  • A brief investigation into live streaming a tech meetup

    November 05, 2018 | 8 min read

    One of the favourite parts of my job is being surrounded by creative professionals who are keen to openly discuss ideas to further both their own and our collective understanding. Some have been a part of the industry for well over ten…

    Read more →
  • Bridging a gap between engineering and design with a simple grid overlay

    May 13, 2018 | 3 min read

    One of my favourite talks to come out of ReactFest London was Siddharth Kshetrapal's presentation on the frontend workflow. As he explained that design systems can fall short due to miscommunication amongst the project disciplines, I was…

    Read more →