Spaces:
Running
Running
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 variantchat-engine.jsx— keyword lookup, fallbacks, suggestion rotator, chat hookvariant-terminal.jsx— the terminal CLI-style UIdebug-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