Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
48 commits
Select commit Hold shift + click to select a range
c4738e7
update color palette
chrishough Dec 10, 2025
0761c88
backup old version - pre redesign - base
chrishough Dec 11, 2025
3241297
back up data and set color palette
chrishough Dec 11, 2025
6497058
add selected fonts
chrishough Dec 12, 2025
9fc8e56
design system in place
chrishough Dec 12, 2025
590ffed
design system in place
chrishough Dec 21, 2025
966b309
setup design system and base home page
chrishough Dec 29, 2025
719ac14
add design system
chrishough Jan 15, 2026
12aaab4
add design system logos
chrishough Jan 15, 2026
44d1457
add logo assets
chrishough Jan 16, 2026
c2cb60c
clean up unused code at this time
chrishough Jan 17, 2026
19bf724
clean up old assets, 404 finalized
chrishough Jan 24, 2026
438281b
add action guard
chrishough Jan 24, 2026
95fc6eb
add action guard
chrishough Jan 24, 2026
f101eb0
fix 404 page
chrishough Jan 26, 2026
a6d21ba
update to ruby 4.0.0
chrishough Jan 26, 2026
946114d
design selected
chrishough Jan 28, 2026
cac6027
fix bundler and menu
chrishough Jan 28, 2026
f39a0e5
fix logo proportions on 404
chrishough Jan 28, 2026
c760027
Fix jobs
chrishough Jan 28, 2026
8f8e9db
fix about page structure
chrishough Jan 29, 2026
2467492
add client
chrishough Jan 29, 2026
ba9e3b1
fix project status
chrishough Jan 29, 2026
f606f86
update project design
chrishough Jan 29, 2026
07dd9eb
update design
chrishough Jan 30, 2026
0b6deeb
update design
chrishough Jan 30, 2026
8fb1168
update design
chrishough Jan 30, 2026
9796897
update design
chrishough Jan 30, 2026
0e8e83d
adjust contact form
chrishough Jan 31, 2026
0d5aa51
refactor the connection section
chrishough Jan 31, 2026
e79139b
fix footer copyright design
chrishough Feb 1, 2026
f4dcb72
remove all code versions from prev design flow
chrishough Feb 1, 2026
f8c624a
update products UI
chrishough Feb 1, 2026
7132c92
update products ui
chrishough Feb 1, 2026
2ee9ae8
update nav ui
chrishough Feb 1, 2026
dfc2f16
update nav
chrishough Feb 1, 2026
fed3816
fix navigation lables and adjust the workshop animation
chrishough Feb 1, 2026
a7432be
fix backgrounds
chrishough Feb 1, 2026
5e7452b
fix backgrounds
chrishough Feb 2, 2026
8f3d254
update about animation
chrishough Feb 3, 2026
c507b87
update contact animation
chrishough Feb 3, 2026
4b60761
updated graphics for the workshop
chrishough Feb 3, 2026
44256a1
fix navigation
chrishough Feb 3, 2026
ba27fb2
updated changelog
chrishough Feb 3, 2026
887377a
fix github actions
chrishough Feb 3, 2026
2b431a8
fix gems
chrishough Feb 3, 2026
0d1b4b2
fix linter errors
chrishough Feb 3, 2026
327a61c
update docs
chrishough Feb 3, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ jobs:
runs-on: ubuntu-latest
env:
SITE_HOST: ${{ vars.SITE_HOST }}
THOR_SILENCE_DEPRECATION: 1

steps:
- uses: actions/checkout@v1
Expand All @@ -19,7 +20,7 @@ jobs:
- name: Install Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: 3.4.3
ruby-version: 4.0.0
- name: Ruby Version
run: |
ruby -v
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ jobs:
runs-on: ubuntu-latest
env:
SITE_HOST: ${{ vars.SITE_HOST }}
THOR_SILENCE_DEPRECATION: 1

steps:
- uses: actions/checkout@v1
Expand All @@ -27,7 +28,7 @@ jobs:
- name: Install Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: 3.4.3
ruby-version: 4.0.0
if: github.event.pull_request.merged == true

- name: Ruby Version
Expand Down
30 changes: 30 additions & 0 deletions .github/workflows/security.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: Security

# gitleaks detect \
# --source=. \
# --redact \
# --verbose > tmp/gitleaks-output.txt 2>&1

on:
pull_request:

jobs:
security_leaks:
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v6
with:
fetch-depth: 0

- name: Install Gitleaks
run: |
curl -sSL https://github.com/gitleaks/gitleaks/releases/download/v8.24.3/gitleaks_8.24.3_linux_x64.tar.gz | tar -xz
sudo mv gitleaks /usr/local/bin/

- name: Run Gitleaks Scan
run: |
gitleaks detect \
--source=. \
--redact \
--exit-code=1
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ backup
webpack.config.js
.vscode
.idea
.playwright-mcp

###############################################################################################
# Environment variables
Expand Down
2 changes: 1 addition & 1 deletion .ruby-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.4.3
4.0.0
76 changes: 74 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ This changelog documents the evolution of a personal branding website from a sim
- **v2.x (2020)**: Multi-page application with Webpack integration, Bootstrap framework
- **v3.x (2021-2025)**: Complete redesign with custom design system, single-page focus, modern tooling
- **v4.x (2025)**: Infrastructure modernization, environment-based configuration, dependency stabilization
- **v5.x (2026)**: Complete visual redesign with blueprint/schematic aesthetic, animated SVG schematics

### Key Architectural Patterns

Expand All @@ -32,6 +33,75 @@ No unreleased changes at this time.

---

## [5.0.0] - 2026-02-03 - RELEASED

### MAJOR RELEASE - Complete Visual Redesign with Blueprint Aesthetic & Ruby 4.0.0 Upgrade

This version represents a complete visual redesign with a cohesive technical blueprint/schematic aesthetic across all sections, along with a major Ruby runtime upgrade.

### Added
- **Blueprint Design System**:
- Technical schematic visual language across all sections
- Animated SVG schematics with industrial/robotic theme
- Blueprint grid overlays and coordinate markers
- Frame corners and technical labels
- **New Section Schematics**:
- About section: Robot arm schematic with animated joints and motion arcs
- Products/Workshop section: Forge assembly with furnace, anvil, hammer, and conveyor
- Contact section: Communication beacon with signal waves and data packets
- **Enhanced Animations**:
- Flame flicker effects in forge schematic
- Hammer strike and spark burst animations
- Signal wave expansion for communication beacon
- Temperature gauge swing and LED status indicators
- Conveyor belt movement and QC scanner beam
- **Stacked Category Tiles**: Workshop section redesigned with vertical tile stack
- **Ruby 4.0.0 Compatibility**:
- Added `cgi` gem (removed from Ruby 4.0.0 stdlib, required by Rack)
- Added `tsort` gem (removed from Ruby 4.0.0 stdlib, required by RuboCop)
- Added `rdoc` gem (removed from Ruby 4.0.0 stdlib, required by various tools)

### Changed
- **Ruby Version**: Upgraded from Ruby 3.4.3 to Ruby 4.0.0
- **Section Layouts**: All content sections now use consistent two-column layout (content + schematic)
- **Visual Consistency**: Unified technical/industrial aesthetic replacing previous design
- **Navigation Logic**: Fixed Connect nav dot highlighting when scrolling to bottom of page
- **GitHub Actions**: Added `THOR_SILENCE_DEPRECATION: 1` environment variable to silence Thor deprecation warnings about boolean default values

### Fixed
- **Nav Highlighting Bug**: Connect section nav dot now properly highlights when user scrolls to page bottom
- **70 Stylelint Errors**: Fixed all CSS linting errors in `_home.scss`:
- Expanded 17 single-line keyframes to multi-line format (`declaration-block-single-line-max-declarations`)
- Added URL quotes for all `url()` functions (`function-url-quotes`)
- Added `stylelint-disable` comments for intentional selector specificity patterns (`.frame-corner`, `.terminal-marker`, `svg`, `span:last-child`)
- **Ruby 4.0.0 LoadError**: Resolved `cannot load such file -- cgi/cookie` by adding stdlib gems removed in Ruby 4.0.0

### Developer Notes

**Architecture Decision - Blueprint Aesthetic**: The move to a technical blueprint/schematic visual language creates unique brand identity distinct from typical portfolio sites. SVG-based animations provide smooth performance and consistent visual vocabulary across all sections reinforces brand.

**Design Philosophy**:
1. **Robot Arm (About)**: Represents the engineering/technical foundation
2. **Forge Assembly (Workshop)**: Industrial metaphor for building products
3. **Communication Beacon (Contact)**: Signal transmission for connection/outreach

**Animation Strategy**: Each schematic uses CSS keyframe animations with careful timing. Products section includes 11 coordinated animations: `flame-flicker`, `shimmer-rise`, `gauge-swing`, `led-heat-blink`, `led-ready-blink`, `led-cycle-blink`, `hammer-strike`, `spark-burst`, `conveyor-move`, `scan-sweep`, `scan-indicator-blink`. About section features: `joint-pulse`, `gripper-open`, `grip-pulse`, `value-update`, `ghost-fade`. Contact section includes: `beacon-grid-breathe`, `packet-north/east/south/west/northeast/southwest`, `core-ring-pulse`, `beacon-core-glow`, `focus-pulse`, `beacon-led-blink`, `beacon-led-steady`, `beam-rotate`, `dish-scan`.

**Navigation Fix**: The scroll highlighting issue was fixed by adding a "near bottom" check that prioritizes the last section (contact) when within 100px of the page bottom.

**Ruby 4.0.0 Migration Notes**:
- Ruby 4.0.0 removed several gems from the standard library that were previously bundled
- The `cgi` gem is required by Rack for cookie handling
- The `tsort` gem is required by RuboCop for dependency sorting
- The `rdoc` gem is required by various documentation tools
- Thor deprecation warnings about boolean default values can be silenced with `THOR_SILENCE_DEPRECATION=1`

**Code Quality Achievement**: All linters passing (RuboCop, ESLint, Stylelint) after fixing 70 stylelint errors in the new animation keyframes.

**Reference**: Feature branch `feature/version_five_o`

---

## [4.0.0] - 2025-12-01 - RELEASED

### MAJOR RELEASE - Infrastructure Modernization & Build System Overhaul
Expand Down Expand Up @@ -688,6 +758,7 @@ The first tagged release of the personal branding website.

| Version | Date | Type | Key Changes | LOC Impact |
|---------|------|------|-------------|------------|
| 5.0.0 | 2026-02-03 | Major | Visual redesign, blueprint aesthetic, SVG schematics, Ruby 4.0.0 | New design system, +3 gems |
| 4.0.0 | 2025-12-01 | Major | Infrastructure modernization, dependency restoration, environment config | +6 packages, 100% linter compliance |
| 3.5.1 | 2025-02-01 | Patch | Contact email update | Minimal |
| 3.5.0 | 2024-11-28 | Minor | Feature parity, asset cleanup | +1,278 / -1,963 |
Expand Down Expand Up @@ -717,6 +788,7 @@ This changelog demonstrates real-world semantic versioning:
- v2.0.0: Multi-page app with Webpack
- v3.0.0: Single-page app with custom design system
- v4.0.0: Infrastructure modernization with breaking environment variable requirements
- v5.0.0: Blueprint/schematic redesign with Ruby 4.0.0 upgrade

- **Minor versions (x.y.0)**: New features, non-breaking enhancements
- New pages (2.1.0, 2.2.0)
Expand Down Expand Up @@ -787,11 +859,11 @@ This project had two major redesigns (v2.0.0, v3.0.0):

This project is proprietary software. All Rights Reserved.

Copyright (c) 2017-2025 RobotsBuildingRobots, LLC
Copyright (c) 2017-2026 RobotsBuildingRobots, LLC

See the LICENSE file for details.

---

**Generated**: 2025-12-01 using git tag analysis and commit history
**Generated**: 2026-02-03 using git tag analysis and commit history
**Maintainer**: RobotsBuildingRobots, LLC
43 changes: 40 additions & 3 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ This is a personal branding/portfolio website built with Middleman static site g

## Technology Stack

- **Ruby 3.4.3** with Middleman 4.5+
- **Ruby 4.0.0** with Middleman 4.5+
- **Webpack 5.94.0** for asset bundling
- **Slim** templating engine
- **SCSS** with custom design system (no longer using Bootstrap)
Expand All @@ -19,7 +19,7 @@ This is a personal branding/portfolio website built with Middleman static site g

### Development Server
```bash
rake server:development # Start server on http://localhost:4567
rbe rake server:development # Start server on http://localhost:4567
```

### Building
Expand Down Expand Up @@ -97,7 +97,7 @@ source/
### Ruby
- Follow `.rubocop.yml` configuration
- Max line length: 180 characters
- Target Ruby 3.4.3 syntax
- Target Ruby 4.0.0 syntax

### JavaScript
- ESLint with Airbnb base configuration
Expand All @@ -118,3 +118,40 @@ source/
5. **Data**: Site configuration in `data/settings.yml`
6. **Images**: Store in `source/assets/images/`, use Middleman image helpers
7. **Videos**: Place in `source/assets/images/videos/` for proper asset pipeline handling

## Design System Maintenance

**IMPORTANT**: When making any design changes, always update the design system documentation.

The design system page is located at: `source/design-system.html.slim`

When modifying:
- **Fonts** (`_settings.scss`) → Update typography section in design-system.html.slim
- **Colors** (`_settings.scss`) → Update color palette section in design-system.html.slim
- **Spacing** → Update spacing scale section
- **Components** → Update component examples

The design system page must always reflect the actual implementation. Never change fonts, colors, or core design tokens without updating the design system documentation.

## Session Cleanup

**IMPORTANT**: Always kill background processes when finishing a task or ending a session.

### Development Server Rules
- Always start with: `rbe rake server:development`
- Only run ONE instance at a time
- Always kill the server when done with the task

### Cleanup Commands
```bash
# Kill Middleman server
pkill -f "middleman" 2>/dev/null
lsof -ti:4567 | xargs kill -9 2>/dev/null

# Kill any other background processes started during the session
```

### Before Ending Any Session
1. Kill all background dev servers you started
2. Verify no orphaned processes on development ports (4567, 3000, etc.)
3. Never leave background tasks running
8 changes: 7 additions & 1 deletion Gemfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
source 'https://rubygems.org'

ruby '3.4.3'
ruby '4.0.0'

if Gem::Version.new( Bundler::VERSION ) < Gem::Version.new( '2.0.0' )
abort 'Bundler version >= 2.X.X is required'
Expand Down Expand Up @@ -33,6 +33,12 @@ gem 'bigdecimal'
gem 'mutex_m'
gem 'csv'

# Ruby 4.0.0 removed these gems from the standard library
# Required by Middleman, Rack, RuboCop, and Tilt
gem 'cgi'
gem 'tsort'
gem 'rdoc'

group :development do
gem 'pry'
gem 'pry-nav'
Expand Down
Loading