mykin-ai / coding-challenge-fullstack

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Hyphen Fullstack Coding Challenge

Hey đź‘‹! Congratulations on getting to coding challenge stage.

The purpose is to allow you to get hands-on and write some actual code, which we will review and discuss during your technical interview.

The goal is build a small React application where a user can chat with an AI through a simple UI.

Functional Requirements

  • A user should be able to type messages into a text box and see their messages appear in a conversation view.

  • When a user sends a message, the application should call the OpenAI API, which will respond as if it were a chatbot. The responses should be displayed in the conversation view.

  • The conversation view should clearly differentiate between messages from the user and responses from the chatbot, perhaps by differentiating the color or side of the screen for each.

  • Implement a backend API to sit between the frontend and the calls to OpenAI.

Feel free to add other relevant functionalities if you want and have time.

Technical Requirements

  • You must use React for the user interface and TypeScript. You are free to use any other libraries you are comfortable with.

  • The application must call the OpenAI API, with the API key provided on email.

  • You should handle errors gracefully and inform the user when something goes wrong.

  • Your code should be clean, well-organized, and easy to understand.

  • Implement tests that you see fit.

  • We're not expecting a masterpiece of design, but the app should look acceptable to a non-technical user. There should be some attempt at styling, feel free to use whatever framework/tools you’re familiar with.

Practical

  • Please don't spend more than 90 minutes on this exercise. This is meant to be a starting point for our technical discussion and does not need to be a fully polished, production-ready application. You can note the things you would have done if you had more time and we can discuss it during the interview if you like.

  • Share with us your git repo link, at the latest 24 hours before your interview (Github usernames: @simonwh @pax-k @Volland)

Have fun!

About