Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?


Failed to load latest commit information.

Portfolio for developers

Deploy with Vercel

Powered by Vercel

Next js version?

There you go




  • Eslint/Prettier configured
  • Scores 100% on a11y / Performance / PWA / SEO
  • PWA (desktop & mobile)
  • Easy to customize
  • Nice project structure
  • Amazing illustrations by
  • Tablet & mobile friendly
  • Continuous deployment with Vercel
  • Or with Netlify, check Netlify branch
  • A contact form protected by Google Recaptcha
  • Can be deployed with one click
  • Functional components with Recompose React Hooks! ready to migrate to React hooks!
  • Fetches your Github pinned projects with most stars (You could customize this if you wish)
  • One click deployment to Vercel


Project on Behance


├── data
│   └── config              # SEO related tags
├── src
│   └── assets              # Assets
│   │   │── icons             # icons
│   │   │── illustrations     # illustrations from (
│   │   └── thumbnail         # cover of your website when it's shared to social media
│   ├── components          # Components
│   │   │── common            # Common components
│   │   │── landing           # Components used on the landing page
│   │   └── theme             # Header & Footer
│   └── pages               # Pages
└── static                  # favicon & Netlify redirects



  1. Create an account at Formium and grab your form endpoint url
  2. Grab a Google recaptcha key from Google Recaptcha

Make sure to select V2 checkbox

  1. Grab your Github token from GitHub
  2. Click Deploy with Vercel and pass in your:
  • Formium form endpoint
  • Google recaptcha public key
  • Github token

To Env variables section.

For the contact form to work, you will need to update the url in here


  1. Create an account at Formium
  2. Grab a Google recaptcha key from Google Recaptcha
  3. Grab your Github token from GitHub
  4. Run cp .env.development.template .env.development
  5. Run npm i && npm start

You could run vercel env pull to get your env variables from Vercel.

Deploying locally to Vercel

I highly recommend that you push to GitHub/GitLab and deploy your repository to Vercel instead or just hit the Deploy button.

Clean the cache

This removes the .cache/ & public/ folders

yarn reset

Built with

  • Adobe XD
  • Gatsby
  • React & GraphQL
  • Formium
  • Google recaptcha
  • VSCode
  • And these useful of JavaScript libraries & Gatsby plugins package.json


This project is licensed under the MIT License - see the file for more details



If you love this Gatsby template and want to support me, you can do so through my GitHub profile.