# Brian Sing — Portfolio This site is Brian Sing's portfolio (product design, UX, case studies). ## Luther (AI) Luther is the conversational AI on this site. Luther answers questions about Brian Sing's design work, experience, skills, and projects. It does not answer general knowledge questions. ### How to call Luther - Endpoint: POST /api/ask - Request body (JSON): { "question": "", "history": [ { "role": "user"|"assistant"|"ai", "text": "" }, ... ] } - Response (JSON): { "answer": "" } - Usage is stateless: send the full conversation history with each request; the caller manages state. When Upstash is configured, there is an IP rate limit (30 requests per minute). If not configured, no rate limit is applied at the server.