This repository has been archived on 2026-02-01. You can view files and clone it, but cannot push or open issues or pull requests.
Go to file
Colin b4b7dcb079
Update navigation to bold written stories and use normal font for TBD
2025-12-02 13:18:29 -05:00
.cursor/rules Save all current changes to resume project 2025-07-06 11:16:43 -04:00
docker Update navigation to bold written stories and use normal font for TBD 2025-12-02 13:18:29 -05:00
git-hooks Update pre-push hook to auto-commit and push generated PDFs 2025-12-02 13:15:15 -05:00
tests Fix duplicate footer issues and remove npm dependency 2025-07-06 18:36:59 -04:00
.cursorignore Update latest changes 2025-07-23 10:56:48 -04:00
.gitignore bump 2025-12-02 09:20:41 -05:00
.woodpecker.yml Comment out wait-for-deploy-production step in Woodpecker CI config 2025-03-31 04:27:35 -04:00
README.md build: trigger CI build 20251015-203646 2025-10-15 20:36:46 -04:00
build-test-deploy.sh Save all current changes to resume project 2025-07-06 11:16:43 -04:00
docker-compose.production.yml Update Dockerfile.production with multi-stage build and security hardening 2025-03-31 09:41:26 -04:00
docker-compose.staging.yml Update latest changes 2025-07-23 10:56:48 -04:00
docker-compose.yml dev: add docker compose for caddy, map 8081; add story placeholders (.md); update SRI via script; local compose run instructions 2025-10-15 16:58:31 -04:00
package-lock.json Update latest changes 2025-07-23 10:56:48 -04:00
package.json Update latest changes 2025-07-23 10:56:48 -04:00
playwright.config.js Fix duplicate footer issues and remove npm dependency 2025-07-06 18:36:59 -04:00
resume.md Add ScanSnap WebDAV Service project for buildersclub.ca 2025-10-19 15:35:07 -04:00
setup-git-hooks.sh Add UTM URL Generator tool with live preview and pre-generated PDFs 2025-12-02 11:18:49 -05:00
stack.production.yml fixing deploy step 2025-06-05 13:11:42 -04:00
stack.staging.yml fixing deploy step 2025-06-05 13:11:42 -04:00

README.md

Colin Knapp Portfolio Resume

A professional portfolio website with accessibility features and automated testing.

Features

  • Responsive design for all device sizes
  • Light/dark mode toggle with system preference detection
  • High contrast accessible design
  • Keyboard navigable interface
  • WCAG 2.1 Level AA+ compliant

Development

Prerequisites

  • Node.js (v14 or higher)
  • npm (v6 or higher)

Setup

  1. Clone the repository:

    git clone git@git.nixc.us:colin/resume.git
    cd resume
    
  2. Install dependencies:

    npm install
    
  3. Set up Playwright browsers:

    npm run setup
    

Local Development

To serve the site locally for development:

npm run serve

This will start a local development server at http://localhost:8080.

Testing

The project includes automated testing using Playwright for functional tests and Lighthouse for performance and accessibility audits.

Running all tests

npm test

Running only Playwright tests

npm run test:playwright

Running only Lighthouse tests

npm run test:lighthouse

Docker Deployment

The site is deployed using Docker and Caddy. The deployment configuration is in the docker directory.

To build and run the Docker container locally:

cd docker
docker build -t resume:latest ./resume/
docker run -p 8080:8080 resume:latest

Accessibility

This site is designed to meet WCAG 2.1 Level AA+ standards. Key accessibility features include:

  • Proper heading hierarchy
  • Keyboard navigable interface with visible focus states
  • Color contrast ratios that exceed WCAG AA requirements
  • Semantic HTML structure
  • Accessible form controls and ARIA attributes
  • Light/dark mode support with system preference detection
  • Responsive design for all device sizes

License

ISC © Colin Knapp # Build trigger Wed Oct 15 20:36:46 EDT 2025

Build trigger Wed Oct 15 20:36:46 EDT 2025