I decided to build the website using React. Other than react, I used framer-motion to animate the page transitions. I used bootstrap and react-bootstrap to do the styling for the website. In order to make different pages accessible in the website, I used react-router to deal with the different pages.
While this is the frontend for my website, the website itself is actually a full-stack application! Checkout the backend code here https://github.com/SpyingEnvelope/portfolio-backend
The inspiration for the website design is based on a popular bootstrap template. However, I made the whole website myself from scratch.