bjcarlson42 / benjamincarlson.io

My personal website built with Next.js, Chakra UI, Firebase, and next-mdx-remeote.

Home Page:https://benjamincarlson.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

benjamincarlson.io

Overview

My personal portfolio website hosted at https://benjamincarlson.io. My personal website has changed over the years - from a static HTML/CSS/JS site to Wordpress to Jekyll to Gatsby to Django (I made a site with django but never deployed it due to it costing so much!) and finally to Next.js/React. This site has my writing, projects, gear, tutorials, experience, and much more.

Feel free to fork this repo and make it into your own website! Below you will find instructions, features, and the tech stack.

Running Locally

To run locally you must

  1. Clone this repo
git clone https://github.com/bjcarlson42/benjamincarlson.io.git

or

git clone https://github.com/bjcarlson42/benjamincarlson.io.git .
  1. Create a .env file and enter your secret keys (if you skip this step the site will still run but some data won't be fetched)
touch .env

Inside .env:

YOUTUBE_KEY=

GITHUB_KEY=

BUTTONDOWN__KEY=

FIREBASE_CLIENT_EMAIL=
FIREBASE_PROJECT_ID=
FIREBASE_PRIVATE_KEY=

STRAVA_CLIENT_ID=
STRAVA_SECRET=
STRAVA_REFRESH_TOKEN=
  1. Move into the project root and remove git tacking (if you are planning to submit a PR to this repo don't do this step!)
rm -rf .git*
  1. Install dependencies
yarn
  1. Run locally!
yarn dev

Navigate to http://localhost:3000.

Features

  • Light/Dark mode
  • Realtime Statistics via SWR and Nex.js API routes
  • Responsive Design
  • Blog
  • Google Analytics
  • Google AdSense

Tech Stack

Contributing

Contributions are welcome! Feel free to tackle an issue or even implement a new feature. Simply submit a PR and I'll take a look.