A note on what you’re looking at

Good work should be inspectable.

Project descriptions draw on public repositories and documentation reviewed on 8 September 2026. Reported results retain the scope and limitations of their sources.

Project sources

Public GitHub profile: professional focus, AI & Data diploma, and final grade. The portfolio uses the already-public italianRAG engineering case study, not its private implementation. The 116-case result applies only to the benchmark scope described there.

Pefforza 4: README, search implementation, and search-engine notes. Exact search is time-budgeted. The independent JavaScript mini-game here is not the Python engine and makes no claim to perfect play.

KeeFetch: README, provider-profile documentation, and merged network/release hardening. Features in the source tree may not be in the latest published plugin. Privacy controls have explicit network and diagnostic limits.

ThystTV: README, Android screenshots, release-verification documentation, and bookmark-refresh work. It is based on Xtra. Upstream authors deserve credit for the underlying client and architecture. Neither this portfolio nor ThystTV is affiliated with Twitch or Amazon.

ScrapingStore: README, architecture, dashboard image, and documented limitations. It is an educational sandbox pipeline. Its dashboard is a generated snapshot, not a live product feed.

Project scope

The italianRAG case study describes my internship work using public documentation. Its implementation remains private. The other project links lead to their public repositories and demos.

Images and attribution

The document stack and icon arrangement are portfolio illustrations, not product screenshots. The Pefforza hero is a custom illustration of a Connect Four board and a search tree, not an application screenshot. The ThystTV and ScrapingStore previews use images from their public repositories. All three assets are stored with this website. If a preview cannot load, the page explicitly labels its fallback illustration.

Source projects retain their own licenses. ThystTV and Pefforza are AGPL-licensed projects; KeeFetch and ScrapingStore publish MIT licenses. The portfolio does not relicense their source code. The bunny mark and the interactive sculpture are drawn for this site; no portrait is implied.

Privacy and external requests

There are no analytics scripts, advertising pixels, tracking cookies, third-party fonts, or contact forms. The site saves only optional preferences in your browser’s local storage: theme, language, and decorative motion. It remains usable when storage is unavailable.

Project imagery is served from the same host as the portfolio. There are no remote image requests. Page referrer policy is set to no-referrer. Following a source link takes you to that external service and its privacy policy.

Motion and accessibility

Scrolling stays native. The decorative canvas pauses when it is off-screen or the document is hidden. A visible pause control stops decorative motion, and the site honours the system’s reduced-motion preference. The shape controls still work without animated transitions.

Core content and source links are present in HTML. Without JavaScript, case studies open as native disclosure sections. With JavaScript, they open in keyboard-accessible dialogs with Escape dismissal and focus restoration. Use Control or Command K for quick navigation. The mini-game’s discs have different symbols as well as colours.

Interaction design takes cues from Emil Kowalski’s writing on purposeful animation. Reduced-motion behaviour follows the browser media preference. These are design references, not endorsements.

A small, portable website

This is static HTML, CSS, and JavaScript. It needs no backend, API key, package installation, or build service. The same files can run on GitHub Pages, Vercel, or another static host. The intended public host is GitHub Pages.

Back to selected work