Skip to content
Julio Vedovatto Full Stack Developer

Labs

Experiments

Small things I build to learn something new or just for fun.

AI / Agentic Engineering

AI Watermark Sweep

A browser-based C2PA metadata and AI-watermark stripper for images, text, and PDFs. Client-side only—all processing happens on your device.

A client-side tool that removes C2PA metadata, JUMBF manifests, and invisible character markers from images (JPEG, PNG, WebP), text files, and PDFs. All processing runs in your browser—nothing is uploaded, no backend, no tracking.

What it does: Strips invisible watermarks and metadata. What it cannot do: Remove word-level watermarks (SynthID, Anthropic) from plain text, because those signals live in the words themselves, not in metadata.

Built with React 19, TypeScript, and Tailwind CSS. Tested with Vitest and Playwright. Design system follows Hallmark anti-AI-slop principles.

React TypeScriptTailwind

View experiment →

Agent Skills

Personal coding-agent skills for image generation, social content, tailored CVs, and video, audio, and YouTube transcription.

This repository packages reusable skills for coding agents. Each skill gives an agent a focused workflow for tasks such as image generation, social content, CV tailoring, and media transcription. Reusable skills matter because repeating the same setup is still work, even when an agent does it.

Coding AgentsAIAgentic Engineering

View on GitHub →

Experiments

Build Plate Heatmap

A real-time 2D + 3D visualization tool for analyzing 3D printer build-plate warping, featuring a color-coded heatmap, interactive surface plots, and automated warping assessment, built with Vue 3, Three.js, and TypeScript.

A visualization tool for 3D printer makers to analyze build-plate surface topology through a color-coded 2D heatmap and an interactive 3D surface plot with Y-axis rotation. The app processes a 4×4 matrix of Z-height measurements to provide real-time statistics and a warping assessment graded from Excellent to Critical. Built with Vue 3, Three.js, and Tailwind CSS v4, the tool is fully responsive.

Vue Three.js TypeScript

View experiment →

Helix Gallery

A DNA double-helix 3D image gallery — two counter-rotating spirals of images you scroll through, built with HTML, CSS 3D transforms, and JavaScript.

A DNA-shaped image gallery: two vertical strands of images spiral around each other in real 3D space, scrolling via mousewheel or drag with momentum. Front-facing cards brighten and glow on hover; clicking one swings it open like a door and zooms into a lightbox. Built with CSS 3D transforms (transform-style: preserve-3d), a data-attribute-driven render loop, and vanilla JS — no frameworks.

Inspired by this YouTube video.

HTML CSS JS

View experiment →

Button Glow

A glowing button with selectable vibrant neon presets and a pulse toggle, built with Svelte 5, Tailwind v4, and TypeScript.

A neon-glowing button with six vibrant presets you click to apply — hover to reveal the animated gradient glow and layered halo, toggle a pulse, and watch the design-token-driven effect swap instantly. Built with Svelte 5 runes, Tailwind v4 @theme tokens, and TypeScript.

SvelteTailwind TypeScript

View experiment →

Hover text animation

A CSS hover effect that scatters, sparkles, and gradient-fills a word on hover, built with HTML, CSS, and JavaScript.

Hover a word and its letters scatter, sparkle, and fill with a continuous gradient — driven by CSS sibling-index(), sin(), and offset-path math with a ~15-line JS letter-splitter.

Inspired by this YouTube video.

HTML CSS JS

View experiment →

Duck Hunt OTP

A browser experiment that turns entering an OTP code into a Duck Hunt arcade game, built with HTML, CSS, and JavaScript.

A Duck Hunt arcade game for entering a six-digit OTP — shoot ducks carrying the next required digit before the 60-second timer runs out, with a 3-shell clip, a laughing dog taunt that backspaces on hit, and three pixel hearts. Every sound is synthesized in real time with the Web Audio API (no audio files), the dog-taunt state machine is orchestrated with ES2025 Promise.withResolvers(), and the UI uses OKLCH light-dark() theming with @starting-style slot pop-ins. Zero runtime dependencies.

HTML CSS JS

View experiment →

Sliding Image Track

A drag-to-pan image track with internal parallax and a faux depth-of-field falloff, built with HTML, CSS, and JavaScript.

A horizontal row of images you click-and-drag to pan, with a smooth eased glide, per-image parallax, and a depth-of-field falloff that keeps the focused image sharp.

Inspired by this YouTube video.

HTML CSS JS

View experiment →

Semordnilap

An animated semordnilap machine built with HTML, CSS, and JavaScript.

A semordnilap is a word that forms a different word when read backwards — like “live” becoming “evil”. The word itself is “palindromes” spelled backwards.

Inspired by this YouTube short.

HTML CSS JS

View experiment →