Fetch-Pup / README.md
ElisaTrippetti's picture
Update README.md
e6802c5 verified
metadata
title: Fetch Pup
emoji: 🐶
colorFrom: gray
colorTo: yellow
sdk: static
pinned: false
short_description: Dog-loving baseline chatbot · Zero-backend static demo
thumbnail: >-
  https://cdn-uploads.huggingface.co/production/uploads/6687a0faa03abfbb1b8fdfc5/gAYe0blkX9ZGoff3WD23l.png

This is Fetch Pup, at a glance

Fetch Pup is a zero-backend static demo and learning baseline. No model, all browser. Responses come from two layers: an intent matcher that handles greetings and small talk, and a keyword lookup table that returns dog facts verbatim. If neither matches, you get one of three fallback replies.

How it works

Fetch answers using a layered response pipeline:

  • A lightweight intent matcher that handles greetings, small talk, and questions like "what can you do".
  • A small keyword lookup table (dogs, breeds, care, trivia, reactions). If the user's question contains a known keyword, the matching fact is returned verbatim.
  • Three fallback replies cover everything else.

There is no model running in this build. Static Spaces don't run Python or serve models, so the deterministic response pipeline is the honest option here.

The generative version, powered by Meta's BlenderBot-400M-distill, runs separately as a Docker Space.

Files

  • index.html — app shell, loads React + Babel, mounts the terminal variant
  • chat-engine.jsx — keyword lookup, fallbacks, suggestion rotator, chat hook
  • variant-terminal.jsx — the terminal CLI-style UI
  • debug-panel.jsx — optional ⌘D devtools panel (exchange log, keyword table)

Keyboard

  • ⌘K / Ctrl+K — clear the conversation
  • ⌘D / Ctrl+D — toggle the devtools panel

Credits

Designed with Claude Design · Built with Claude Code