Overview
This project is open source and welcomes contributions. Whether you want to contribute improvements back to the project or fork it for your own personal portfolio, this guide will help you get started.Getting Started
Forking vs Contributing
- Forking: Clone the project for your own portfolio site. Remove Bennett’s personal content and replace it with your own.
- Contributing: Submit improvements, bug fixes, or new features back to the original project via pull requests.
Development Setup
Install dependencies
This project uses Bun 1.1.38 as the package manager:
The README mentions
yarn, but the project is configured to use Bun as specified in package.json.Development Workflow
Available Scripts
The project includes several npm scripts for development:Code Style
The project uses ESLint with TypeScript configuration to maintain code quality. The configuration includes:- JavaScript & TypeScript: ESLint recommended rules and TypeScript ESLint recommended rules
- React Hooks: Enforces Rules of Hooks
- React Refresh: Warns about components that prevent Fast Refresh
- Target Files:
**/*.{ts,tsx} - ECMAScript Version: 2020
- Environment: Browser globals
Building the Project
The build process includes:- Generating reading times for blog posts
- TypeScript compilation
- Vite production build
dist directory.
Technology Stack
- Framework: React with Vite
- Styling: Tailwind CSS v4
- Content: MDX for blog posts
- Routing: React Router DOM (manual configuration)
- Icons: Iconsax React, Lucide React, Pikaicons
- Animation: Motion (Framer Motion)
- Syntax Highlighting: rehype-prism-plus
Submitting Pull Requests
If you’d like to contribute improvements back to the project:Make your changes
- Write clean, readable code
- Follow the existing code style
- Run
bun run lintto check for issues - Test your changes locally with
bun run dev