- Main languages: JavaScript (ES6) / HTML5 / CSS3
- React.js with:
- Hooks
- Styled Components
- Various plugins - copy-to-clipboard, react-transitions-group, react-device-detect
- Gatsby.js to translate the site and deploy through GitHub pages
- Git / GitHub to manage the code
The app is deployed on GitHub pages and can be found here: https://paulcooke.github.io/
I used the production of this site to learn more about a few different technologies:
React Hooks
Most my prior projects with React have used class-based components, and while I had been practising Hooks, this project involved learning custom hooks (there are two: useHover and useCopyEmail).
Gatsby
I had been wanting to try out Gatsby and needed a suitable project. Once I saw deployment through GitHub pages was possible I decided that's how I'd put the site live.
- Learning Custom Hooks
- Learning Gatsby
- useHover was tricky, I used several references and had to play with it quite a bit to get the result I wanted, and for it to work nicely when the hoverable/interchangeable components are mapped
- Learning to use react-transition-group alongside styled-components
- I would like to use Gatsby's image features properly, with GraphQL
- I will likely adjust and tinker with animations and the media query sizes
Site was initially put live August 2020