Hi, I'm

Kris

Security & systems engineer focused on compliance tooling, container hardening, and secrets management. I build in Rust, Python, Go, and JavaScript.

Closed Source

private

QuizPort

Full-stack interactive quiz platform. Supports real-time multiplayer sessions, custom question banks, scoring, and leaderboards — deployed and live at quizport.io.

full-stack real-time live ↗

More available on request

kelleyblackmore@gmail.com

Open Source

3

Automatic-Secret-Rotation

Rust CLI for automated secret key rotation with pluggable provider support and vault integration. Handles credential lifecycle end-to-end.

Rust secrets-management

stig-asd-scanner

DISA ASD STIG V6R4 compliance scanner — 8 automated check modules with SARIF & JUnit output.

Rust compliance

stig-api-scanner

Automated DISA API SRG V1R0.1 compliance scanner — 9 check modules with SARIF & JUnit reporting.

Rust compliance

repo-maturity

Scores any codebase across README, license, tests, CI, and security coverage. Instant health report for any repo.

Rust

cica

Container image cosign automation — streamlines image signing and verification in CI/CD pipelines.

Shell

raci-matrix-builder

Interactive RACI matrix builder for mapping responsibilities across teams and tasks.

TypeScript live demo ↗

security-pipeline

Automated security scanning pipeline for continuous vulnerability detection and reporting.

Python

openshift-deploy-image-cicd

CI/CD pipeline image for deploying workloads to OpenShift clusters.

Dockerfile

rhel8-hardened-base

Hardened RHEL 8 base image with security configurations applied for production container workloads.

Shell

View all repositories

github.com/kelleyblackmore ↗

Writing

Adding a Backend and Keycloak to a Vite App

Wiring a Vite SPA to a real backend and Keycloak — using a backend-for-frontend so access tokens never touch browser JavaScript, plus the proxy trick that makes dev and prod behave identically.

vite keycloak oidc

Designing Claude Skills, Workflows, and Agents

A practical guide to the three building blocks of Claude-powered automation — skills for reusable prompts, agents for parallel work, and workflows for deterministic multi-step orchestration.

claude agents workflows

Managing Rust Dependencies and Tracking SBOMs

How to keep your Cargo dependency tree clean, audit it for known vulnerabilities, and generate a Software Bill of Materials you can actually use.

rust sbom supply-chain

Using an LLM Agent to Write Good Jira Stories

How to prompt and constrain an LLM agent so it outputs well-formed Jira stories — user role, goal, benefit, description, and tight acceptance criteria every time.

ai agents jira

Building Agent Skills, Memory, and Rules

A practical guide to the three primitives that make an LLM agent actually useful: skills it can invoke, memory it can recall, and rules that keep it on track.

ai agents llm

Benchmarking LLMs: What to Measure and How

A practical guide to measuring LLM latency, throughput, quality, and cost — without getting fooled by leaderboard numbers.

llm benchmarking performance

Secret Topology in HashiCorp Vault

How to structure mount paths, policies, and auth methods so that Vault scales cleanly across teams and environments.

vault secrets security

Getting Started with Rust

A practical introduction to Rust — ownership, the borrow checker, cargo, and the patterns that make it click for systems work.

rust tutorial systems

Deploying a Static Site to GitHub Pages

A complete guide to deploying and maintaining a static site on GitHub Pages — custom domains, Jekyll pitfalls, and keeping it fast.

deploy github-pages devops