| --- |
| title: Human Adoption Office |
| emoji: ๐ |
| colorFrom: green |
| colorTo: yellow |
| sdk: gradio |
| sdk_version: 6.13.0 |
| python_version: "3.10" |
| app_file: app.py |
| pinned: false |
| short_description: Find the cat who chooses to adopt you. |
| --- |
| |
| # Human Adoption Office |
|
|
| Find the cat who chooses to adopt you. |
|
|
| ## Visual Direction |
|
|
| The interface uses a vintage illustrated-book system inspired by the supplied |
| layout reference: warm paper texture, double-line borders, dark green chapter |
| headers, relationship cards, editorial photo frames, and fixed horizontal |
| screens with no long-page scrolling. |
|
|
| ## Included Flow |
|
|
| 1. Landing / intro |
| 2. Draw a cat relationship card |
| 3. Lifestyle rhythm question |
| 4. Preferred cat relationship question |
| 5. Matching / listening screen |
| 6. Matched cat story |
| 7. Real photo placeholder and final CTA |
|
|
| The interface uses `gr.State` for: |
|
|
| - `selected_card` |
| - `selected_lifestyle` |
| - `selected_relationship` |
| - `matched_cat` |
|
|
| Cat records are loaded from `cats.csv`. The `match_cat()` function scores each |
| record against the three selected values and returns the highest-scoring cat. |
|
|
| ## Run Locally |
|
|
| ```bash |
| python -m pip install -r requirements.txt |
| python app.py |
| ``` |
|
|
| Open the local Gradio URL shown in the terminal. The desktop layout is designed |
| for a viewport at least 980 pixels wide. |
|
|
| ## Replace the Sample Content |
|
|
| - Add real shelter records to `cats.csv`. |
| - Store real cat photos under `assets/` and update each row's `image` field. |
| - Replace the final CTA link in `app.py` with the shelter's adoption page. |
|
|