My personal portfolio website, built with Next.js, Tailwind CSS and deployed to Vercel. Based on chronark's site. Some ideas borrowed from leerob/leerob.io.
It is supposed to be used as a template for other GitHub users' portfolios. Data about user and projects are gathered via GitHub and Vercel API.
- Framework: Next.js
- Deployment: Vercel
- Styling: Tailwind CSS, Primer
git clone https://github.com/jirihofman/portfolio.git
cd portfolio
Create a .env
file similar to .env.example
.
mv .env.example .env.local
Add GitHub token into the new file.
GH_TOKEN=YOUR_GH_TOKEN
# If you have Vercel projects, create a token here https://vercel.com/account/tokens to get more info.
VC_TOKEN=YOUR_VERCEL_TOKEN
Then install dependencies and run the development server:
# Install dependencies.
npm install
# Replace jirihofman's personal info with octocat's.
npm run setup
# Start hacking.
npm dev
Edit data.json
to put your personal information there.
Please remove all of my personal information in data.json
before deploying your own version of this site by running npm run setup
. Once you are happy with your data.json
, set
# .env or .env.local
IS_TEMPLATE=false
in your ENVs to prevent npm build
from reverting data.json
back to Octocat's data.
-
data.json
: githubUsername, description, heroNames. Handled bysetup.mjs
. -
README.md
: link at the top -
app/layout.jsx
: metadata - title, description, favicon. Handled bysetup.mjs
. -
public/favicon.ico
. Handled bysetup.mjs
.