A recipe assistant built with React and Puter.js. It keeps conversation context, checks AI readiness, and handles pending responses and provider errors in the chat.
Click to zoomA recipe question often needs a follow-up: swap an ingredient, change a portion, or clarify a step. ChefyAI uses a conversation so each request can build on the previous answer.
Built the recipe chat, Puter authentication integration, request state, and responsive frontend.
Each request includes the message history and a cooking-focused system prompt. Follow-up questions use the existing conversation instead of starting from an isolated prompt.
The interface checks whether the Puter AI client is ready and exposes that state. Empty input is ignored before a request is sent.
The reply handler accepts string responses or message objects. Pending requests show feedback, and caught errors appear in the conversation.
A deployed recipe chat with provider authentication and a complete request-and-response flow. AI generation runs through Puter.js from the browser.
Ask for a recipe or describe available ingredients, then follow up in the same chat. The interface retains previous messages, moves the conversation to the latest response, and shows when the assistant is waiting for an answer.
Provider readiness, authentication, input, message history, and request progress have different responsibilities. Keeping those states distinct makes it possible to explain why the interface is waiting and handle errors without discarding the conversation.
The project uses Puter for provider access rather than maintaining a custom AI backend. The source makes that integration and its client-side state handling available to inspect.
"You have a right to perform your prescribed duty, but you are not entitled to the fruits of actions."
Design by SahilCodex
© 2026. Built with hands.