https://github.com/puppe1990/metaphoric-chatbot
Web app for guided metaphor generation and metaphor coaching with a Next.js frontend and FastAPI agent service.
https://github.com/puppe1990/metaphoric-chatbot
ai chatbot fastapi metaphor nextjs nlp
Last synced: 2 months ago
JSON representation
Web app for guided metaphor generation and metaphor coaching with a Next.js frontend and FastAPI agent service.
- Host: GitHub
- URL: https://github.com/puppe1990/metaphoric-chatbot
- Owner: puppe1990
- Created: 2026-04-19T10:56:23.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2026-04-19T12:21:34.000Z (2 months ago)
- Last Synced: 2026-04-19T13:25:00.689Z (2 months ago)
- Topics: ai, chatbot, fastapi, metaphor, nextjs, nlp
- Language: TypeScript
- Size: 3.58 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Metaphoric Chatbot
Web app for guided metaphor generation and metaphor coaching.
### Apps
- `web/` — Next.js frontend
- `agent_service/` — FastAPI + Deep Agents backend
### Local development
```bash
cp .env.example .env
(cd web && npm install)
(cd agent_service && uv sync --extra test --extra lint)
```
### Run the agent service
```bash
cd agent_service
uv run uvicorn app.main:app --reload
```
### Run the web app
```bash
cd web
npm run dev
```
### Tests
```bash
cd agent_service
uv run ruff format .
uv run ruff check .
uv run pytest
cd ../web
npm test
```
### Pre-commit
```bash
uv tool install pre-commit
pre-commit install
pre-commit run --all-files
```
The local hooks run the shared hygiene checks plus `ruff format`, `ruff`, and `pytest` for `agent_service`, and `vitest` for `web`. The GitHub Actions workflow runs the same Python format/lint/test checks, plus the web build and any `lint` or `typecheck` scripts that may be added later.
### Receive Mode Notes
Receive mode now interprets user turns semantically. Changes in `agent_service/app/prompts.py`, `agent_service/app/agents.py`, `agent_service/app/orchestrator.py`, or `agent_service/app/providers/local_provider.py` must preserve this rule:
- user-supplied metaphors become the active refinement seed instead of being discarded for generic menu choices
- receive artifacts in the contextual path should avoid rigid `A/B/C` quiz framing