A Jekyll-powered portfolio website built by Bryan Barnes using Tailwind CSS, hosted on GitHub Pages using GitHub Actions for automated deployment.
- Ruby (3.1 or higher)
- Node.js (18 or higher)
- Bundler gem
-
Install dependencies:
# Install Ruby gems (if using local development) bundle install # Install Node.js packages npm install
-
Build CSS and start development server:
npm run dev
-
Visit your site:
- Local: http://localhost:4000
# Build CSS only
npm run build:css
# Watch CSS for changes
npm run watch:css
# Start Jekyll with live reload
npm run dev
# Build for production
npm run build├── .github/workflows/ # GitHub Actions deployment
│ └── pages.yml # Build and deploy workflow
├── _config.yml # Jekyll configuration
├── _data/ # YAML data files
│ ├── experiences.yml # Work experience
│ └── education.yml # Education & certifications
├── _layouts/ # Page templates
│ └── default.html # Main layout
├── _projects/ # Project markdown files
├── assets/
│ ├── css/
│ │ └── style.css # Generated Tailwind CSS
│ └── images/ # Site images
├── src/
│ └── css/
│ └── tailwind.css # Tailwind source
├── index.html # Homepage
├── package.json # Node.js dependencies
└── tailwind.config.js # Tailwind configuration
Edit seasonal color schemes in tailwind.config.js:
secondary_spring_summer: Spring/Summer accentsecondary_summer_fall: Summer/Fall accentsecondary_fall_winter: Fall/Winter accent
- Experience: Edit
_data/experiences.yml - Education: Edit
_data/education.yml - Projects: Add markdown files to
_projects/
The site uses a seasonal gradient system that automatically changes based on the current month.
The site automatically deploys to GitHub Pages when you push to the main branch using GitHub Actions:
- Workflow:
.github/workflows/pages.yml - Triggers: Push to main branch or pull requests
- Process:
- Sets up Node.js 18 and Ruby 3.1
- Installs dependencies
- Builds Tailwind CSS
- Builds Jekyll site
- Deploys to GitHub Pages
For local testing before pushing:
# Build locally
npm run build
# Commit and push changes
git add .
git commit -m "Update site"
git push origin main- Check if Tailwind config has syntax errors
- Rebuild CSS:
npm run build:css - Clear browser cache (especially in incognito)
- Ensure Ruby/Node.js are installed
- Run
bundle install && npm install - Try
bundle exec jekyll servedirectly
- Check workflow logs in GitHub Actions tab
- Verify Node.js and Ruby versions in workflow
- Ensure all dependencies are properly configured
- No Gemfile: Using GitHub Actions for dependency management
- Automated Build: CSS and site build handled by GitHub Actions
- Local Development: Still supports local development with
npm run dev - Clean Repository: Only essential files committed