Web developer with 3 years professional experience. Currently working in Typescript. Probably drinking Monster.
Typescript, TSX React and “vanilla” Node.js web scraper. Scrapes content from Guardian News and BBC, then uses JSDom to pull relevant data into an object accessed via API. React filters results based on input. Used Tailwind CSS. Prototype for larger, upcoming project (newswithout.com)!
Fullstack MERN app using: JWT authentication, Redux & D3Charts. Create accounts, move money between current/savings/store, track transfers and see data visualised. I separated concerns into highly-scalable architecture. Express server interactions mapped in Redux for fast updates.
Prototype for personal blog built in Vue/Nuxt.js. Built working article/category system to tie content together using DatoCMS - used nuxtServerInit to populate stores with data on the server (goodbye skeleton loaders!).
Built new UI features and marketing integrations for De Beer’s Lightbox Shopify store. Heavily involved in design/development cycle. Product system based on a complex tag ecosystem, with product pages rendered in Vue - pulling data via GraphQL queries.
Worked as lead developer on David Austin Roses’ Shopify rebuild. Working in a 4-person team, we focused heavily on multilanguage setup and browser compatibility to reflect international audiences.
Moving over from Vue/Nuxt: learning-curve was challenging, but enjoyable. Worked on smooth UI animations to make a somewhat simple state-managed app feel like a real tool. Very happy transitioning from Vue to React.
Vue/Nuxt.js freelance project for operations manager in the events industry. Used GraphQL to make API requests to DatoCMS, creating an easily updatable backend. Used Nuxt transitions between pages and some Vue plugins to create a fluid, living site with a fun colour scheme.
Original Vue project, built before understanding stores well (made API calls on every page, necessitating the skeleton loaders on all content!). This was fun to build out, but vanilla Vue was quite limiting for a project like this.
My old (2018) portfolio. Very basic static setup using Anime.js library to animate static content. Example of clean, responsive design. Kept everything on one page and used anchors to scroll users through the page. Excluding libraries, all code fits on 2 A4 pages.