Go to file
colin 0b693d7d2b
ci/woodpecker/push/woodpecker Pipeline was successful Details
Update docker/resume/index.html
2025-04-03 11:37:33 -04:00
docker Update docker/resume/index.html 2025-04-03 11:37:33 -04:00
tests Remove test results from git tracking and update .gitignore 2025-03-31 09:30:32 -04:00
.gitignore Remove test results from git tracking and update .gitignore 2025-03-31 09:30:32 -04:00
.woodpecker.yml Comment out wait-for-deploy-production step in Woodpecker CI config 2025-03-31 04:27:35 -04:00
README.md Add comprehensive README with testing instructions 2025-03-31 04:43:41 -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 Docker configuration with production build and security hardening 2025-03-31 09:40:52 -04:00
package-lock.json Update resume with Oh My Form Docker pulls and comprehensive experience 2025-03-31 09:18:30 -04:00
package.json Add local header testing infrastructure 2025-03-31 04:58:51 -04:00
playwright.config.js Add Playwright configuration file 2025-03-31 04:43:14 -04:00
stack.production.yml Update stack.production.yml 2024-11-11 22:07:23 -05:00
stack.staging.yml Add stack.staging.yml 2024-03-03 22:16:02 +00: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