This is my personal portfolio website built with react, in the style of a responsive 2 column dashboard, intended to showcase my personal CV and experience in a visual manner and display examples of my work through the portfolio section.
- Dynamic data rendered from shared json objects.
- Initial loader animation to simulate loading data.
- Responsive mobile-first design that works on a variety of screen sizes.
- Used HashedRouter to enable SPA support with GitHub pages
- Distinct Dark & Light themes.
- Built with React & TailwindCSS.
- Reusable UI components.
To run the project locally, follow these steps:
-
Clone the repo:
git clone https://github.com/ZakMooney/zakmooney.github.io.git cd zakmooney.github.io
-
Install the dependencies:
npm install
-
Start the dev server:
npm start
-
Visit
http://localhost:3000
.
This repo was created with Create React App. Chart components are from react-chartjs-2. Icons used are a mixture of Apple Emoji & FontAwesome. The stars animation is a customised version of this codepen. Page transitions implemented using framer-motion. Image lightbox/gallery implemented using fslightbox-react.
In the project directory, you can run:
npm start
: Starts the dev server.npm run build
: Builds for production in thebuild
folder.npm run eject
: One-way operation. Removes the single build dependency from the project.npm run predeploy
: Runs the build script.npm run deploy
: Deploys the app to GitHub Pages.
- Add the job data object to
JobDetails
in/src/data/jobdetails.js
- Update
SkillYears
in/src/data/jobdetails.js
if relevant for "Key Skill Expierience" Bar Chart - Update
RoleYears
in/src/data/jobdetails.js
if releveant for "Key Role Experience" Pie Chart
- Add any images & videos to
/src/assets/portfolio
- Import the images into
/src/data/portfoliodetails.js
- Add the work data object to
PortfolioDetails
in/src/data/portfoliodetails.js
This project is released under the MIT License.