Skip to content

hedgertronic/hedgertronic.github.io

Repository files navigation

hedgertronic.com

A portfolio website showcasing my career highlights across baseball, research, writing, and media. Built with vanilla HTML/CSS/JS and hosted on GitHub Pages.

The home page features five subsections:

  • On the Field: Highlights from my baseball career, including stats, videos, and training content.
  • In the Lab: Research projects, presentations, and code, showcasing my technical contributions.
  • On the Page: My articles and analysis in both long-form and short-form mediums.
  • In the Media: Podcasts, interviews, and features.
  • Off the Clock: Personal hobbies and interests.

Additionally, the website includes a resume page along with a downloadable PDF version that is automatically generated to ensure information consistency.

Designed to be lightweight and responsive on the front-end, though admittedly a bit over-engineered on the back-end with JS builds and various testing mechanisms.

Structure

/assets      Fonts, images, documents
/css         Stylesheets
/data        JSON content to define each website section
/src         JavaScript modules (bundled with esbuild)
/tests       Unit and E2E tests
/tools       Python scripts for automation

Development

Build

npm install
npm run build      # Bundle JS and CSS
npm run dev        # Watch mode for development

Test

npm test           # JS unit tests (Vitest)
npm run test:e2e   # E2E browser tests (Playwright)
uv run pytest      # Python unit tests

Features

  • Responsive design: Full-screen hero page with five subsections. Hero section adapts to screen size and orientation for consistent experience across devices.
  • JSON content approach: Manages website content through JSON files, allowing for easy updates and version control.
  • Theme switcher: Four color schemes based on a "team colors" concept. Can choose Driveline, Hopkins, Mets, or Phillies to update website accent colors and my photo headshot.
  • Automated workflows: Resume webpage and PDF automatically generates from JSON file. Open Graph image automatically generates from hero section content and theme. Career stats automatically processed from Baseball Reference data.

Future Plans

Automatation of data fetching to reduce manual updates:

  • MiLB: Pull career and season stats.
  • Twitter/X: Sync likes, retweets, and bookmarks for content curation.
  • GitHub: Fetch repo stats and descriptions.
  • Instagram: Pull cover images for training section.
  • Substack: Fetch new blog posts and cover images.
  • Goodreads: Get books that I am currently reading.
  • Spotify: Pull most listened to album over the recent past.
  • USCF/Chess.com: Update chess ratings.

About

Personal website and portfolio.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors