Skip to content
View Artsen's full-sized avatar

Block or report Artsen

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
Artsen/README.md

John Crafts

Applied AI Prototyper · Creative Technologist · Web Platform Builder

I build tools that make complex systems easier to inspect, compare, understand, and use.

My projects often begin with problems that are difficult to hold in your head all at once: dozens of model responses, complicated media-processing pipelines, large research collections, website ecosystems, or visual design data. I turn those problems into structured systems with durable records, clear workflows, and interfaces people can actually work with.

My work sits at the intersection of:

  • Applied AI and retrieval
  • Semantic exploration and information visualization
  • Website intelligence and platform tooling
  • Media processing and creative software
  • Evidence-rich research interfaces
  • Accessible, workflow-oriented product design

Selected Work

A local-first browser workspace for turning source videos into complete, website-ready media packages.

WVO combines FFmpeg and FFprobe processing with persistent jobs, codec recommendations, synchronized visual comparison, posters, captions, transcripts, structured data, reusable presets, and deployment-ready exports.

Rather than acting as a generic transcoder, it guides the complete workflow from source inspection through browser review and final website handoff.

Built with: TypeScript, React, Node.js, FFmpeg, FFprobe, SQLite


A research interface that turns many generative-model responses into an interactive semantic atlas.

The system samples model outputs, divides responses into meaningful segments, creates blended feature representations, maps them into two- and three-dimensional spaces, detects clusters, constructs similarity graphs, and preserves the provenance needed to reproduce and compare each run.

It is designed to help people investigate patterns across model outputs instead of reading isolated transcripts one at a time.

Built with: Python, FastAPI, React, TypeScript, embeddings, UMAP, HDBSCAN, KMeans, approximate nearest-neighbor search


A local-first workspace for extracting, organizing, analyzing, and exporting usable color palettes.

ColorCraft combines perceptual color processing with editable palettes, geometric harmony analysis, role-based contrast review, accessibility checks, versioned local storage, and practical exports for CSS, Tailwind, JSON, and SVG.

The project focuses on producing explainable design information rather than pretending that an algorithm can determine whether a palette is aesthetically “good.”

Built with: Python, FastAPI, React, TypeScript, scikit-learn, CIELAB, WCAG contrast analysis


A retrieval and evidence-exploration system for working with collections of research papers.

ARPack processes source documents into searchable evidence, supports configurable retrieval stages, preserves source diversity, extracts relevant quotations, and generates responses grounded in the retrieved material.

The project explores how retrieval systems can expose their evidence instead of hiding the entire process behind a generated answer.

Built with: Python, FastAPI, React, embeddings, FAISS, retrieval-augmented generation


A browser-based creative video tool that manipulates H.264 bitstream structures to produce configurable datamoshing and compression-artifact effects.

The implementation works with encoded video concepts such as IDR frames, SPS/PPS units, frame duplication, corruption, dropping, and reordering rather than applying a visual filter after decoding.

Built with: Python, Flask, FFmpeg, H.264 bitstream processing


Current Direction

I am currently exploring a universal website intelligence platform for recording, understanding, and comparing websites.

The system is intended to combine:

  • Recursive static and browser-rendered crawling
  • Durable page, content, link, asset, and screenshot records
  • Historical website snapshots
  • Site-to-site and page-to-page comparison
  • Public and authorized inventory reconciliation
  • Google Search Console and analytics data
  • Production-to-staging migration validation
  • Evidence boards, investigations, and proposals
  • Optional semantic and AI-assisted processing

The central idea is to preserve what was actually observed first, organize it into a trustworthy model, and make interpretation a separate and inspectable layer.


How I Build

Evidence before interpretation

I prefer systems that preserve source material, provenance, processing versions, and intermediate results. Calculations and AI-generated conclusions should remain traceable to the records that produced them.

Complete workflows over isolated features

A technically impressive operation is not automatically a useful product. I focus on the full path from input and processing through review, correction, persistence, and export.

AI where it adds real value

I use language models, embeddings, and semantic processing when they help organize or interpret information. I do not treat AI as a replacement for deterministic systems, durable data models, or user control.

Local-first where practical

Several of my tools keep source media and project data on the user’s machine. Local processing can provide stronger privacy, clearer ownership, lower infrastructure requirements, and access to powerful native tools such as FFmpeg.

Interfaces for complicated systems

I am particularly interested in making technically dense systems understandable without stripping away the information advanced users need.


Areas of Interest

  • Applied AI prototypes and internal research tools
  • Semantic search and information retrieval
  • Model-output evaluation and visualization
  • Knowledge graphs and evidence-grounded systems
  • Website crawling, comparison, and intelligence
  • Human-AI interaction
  • Local-first application architecture
  • Creative media processing
  • Accessible technical interfaces
  • WordPress and web-platform engineering

Technologies

Languages

TypeScript · JavaScript · Python · PHP · SQL · HTML · CSS

Applications and platforms

React · Node.js · FastAPI · Flask · WordPress · Gutenberg · PostgreSQL · SQLite · MySQL · Linux

AI and data

OpenAI APIs · Structured generation · Embeddings · RAG · FAISS · Sentence Transformers · UMAP · HDBSCAN · KMeans

Media and browser systems

FFmpeg · FFprobe · Playwright · Video codecs · Browser media APIs · Image and color processing

Web and measurement

Technical SEO · Accessibility · GA4 · Google Search Console · GTM · Cloudflare · Performance analysis


I am most interested in projects where the problem is ambiguous, the information is messy, and the shape of the useful product still needs to be discovered.

Pinned Loading

  1. Semantic-Landscape-Sampler Semantic-Landscape-Sampler Public

    Semantic Landscape Sampler (SLS) lets you ask a question, generate N diverse answers from your chosen GPT model, and visualize the result as an interactive 3D point cloud. Points are clustered by m…

    TypeScript

  2. web-video-optimizer web-video-optimizer Public

    Local-first web video optimizer for compressing, captioning, previewing, and packaging website-ready videos with FFmpeg.

    TypeScript 1

  3. ARPack ARPack Public

    A minimal arXiv RAG toolkit: ingest + hydrate + chunk papers, embed into FAISS, and serve search & quote-grounded Q&A via FastAPI. Includes /ask_pro (multi-query expansions, self-consistency, min-s…

    Python

  4. ColorCraft ColorCraft Public

    Extract colors from images, refine and save palettes, review geometric relationships and WCAG contrast, and export for design or development—all locally.

    TypeScript

  5. H.264-Datamosh-Web-Tool H.264-Datamosh-Web-Tool Public

    A web-based tool for performing H.264 datamoshing by processing and concatenating two video clips. This project uses Python, Flask, and ffmpeg to extract and manipulate raw video streams, providing…

    Python

  6. GlitchCraft GlitchCraft Public

    This tool allows the user add noise and other effects to video or images. Current features are: Noise, pixelation, glitch, distortion, color bleeding, horizontal scan lines, static noise, and flicker

    Python