Skip to content


Repository files navigation

Contributors Forks Stargazers Issues MIT License LinkedIn


Macharia Muguku's Software Engineering Portfolio V2

React Gatsby Engineering Portfolio
Explore the codebase »

View Demo · Report Bug · Request Feature

Linked-in post with Video Preview and Project Motivation

Table of Contents

About The Project

Product Name Screen Shot

I felt my previous basic HTML and CSS portfolio inherently fell short in some aspects. This is a redress for that.

What I was aiming for:

  • Completeness. Unlike the previous one, I wanted this portfolio version to look and feel more like the final version from the very start.

  • Simplicity. I wanted everything important in here, on the same page, accessible on a single page load. I also wanted to tree shake my own css and move from proprietary modules like bulma

  • Minimalism. As is my design philosophy

    Less is more .

Of course, it's impossible to hit perfection on the first try, so I'll be making iterations in the near future. Feel free to suggest changes by forking this repo and creating a pull request or opening an issue.

Built With


  • React Context API with a Global Reducer
  • Custom Hooks
  • React error boundary
  • Copy to Clipboard
  • Medium and Github API
  • Integration and Unit Testing with RTL

Getting Started

To get a local copy up and running follow these simple steps.


  • nodejs and yarn package manager
sudo apt install nodejs


  1. Clone the repo
git clone
  1. Install packages
yarn add
  1. Get your GitHub API key and fill it in .env.development and .env.production

  2. Fill in your username and other personal info in gatsby-config.js


  1. Run Tests
yarn test
  1. Run in Development
yarn develop || yarn start || gatsby develop
  1. Build for Production
yarn build || gatsby build
  1. Run Production Locally
yarn serve || gatsby serve


See the open issues for a list of proposed features (and known issues).


Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request


Distributed under the MIT License. See LICENSE for more information.


Macharia Muguku - @CharMgk -

Project Link:



Macharia Muguku Software Engineering Portfolio V2








No releases published


No packages published