HamishMW/portfolio
HamishMW/portfolio has 3,566 GitHub stars and 728 forks. GitHot measured -1 stars in 24 hours. Last checked 2026-11-08 16:38 UTC. Last push 2024-11-16.
My personal portfolio website built using React and three js
Measured star growth
- in 24h
- -1
- in 7 days
- Collecting history
- in 15 days
- Collecting history
- in 1 month
- Collecting history
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
Original
Personal portfolio
My design portfolio to showcase a few projects. Built with Remix, Three.js, and Framer Motion. View the live site or check out a live version of the components storybook.
Install & run
Make sure you have nodejs 19.9.0 or higher and npm 9.6.3 or higher installed. Install dependencies with:
npm install
Once it's done start up a local server with:
npm run dev
To view the components storybook:
npm run dev:storybook
Deployment
I've set up the site using Cloudflare for hosting. Deploy the site to Cloudflare Pages:
npm run deploy
Permissions
I'm cool with anyone using the code or parts of the code for their own site, it is open source so people can learn from it and adapt it. However, I would encourage you to modify the theme and components it to make it your own. If you are using the site's design largely unmodified, I'd appreciate being credited as the designer of the website.
I do not give permission to present any of my projects as your own (this is being actively used as my portfolio site and these are my real projects I've worked on).
FAQs
How do I change the color on the DisplacementSphere (blobby rotating thing in the background).
You'll need to edit the fragment shader. Check out this issue for more details.
How do I get the contact form to work?
To get the contact form working create an AWS account and set up SES (Simple Email service). Then plug in your details into .dev.vars.example and rename it to .dev.vars. You'll also need to add these as enviroment variables in the Cloudflare dashboard for it to work in production. Or if you don't mind sending through gmail use nodemailer instead.
Explore related projects
freeCodeCamp/freeCodeCamp
freeCodeCamp.org's open-source codebase and curriculum. Learn math, programming, and computer science for free.
458,763 starsdonnemartin/system-design-primer
Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards.
377,349 starsreact/react
The library for web and native user interfaces.
252,417 starsvuejs/vue
This is the repo for Vue 2. For Vue 3, go to https://github.com/vuejs/core
212,631 stars