This chatbot application is a simple, yet powerful, web-based chat system that allows users to interact with multiple chatbots. Each chatbot specializes in a specific domain, providing users with valuable information and assistance.
- Responsive web-based chat interface
- Multiple chatbots with different functionalities
- Pokébot: Provides information on Pokémon using the PokéAPI
- FactBot: Delivers interesting facts using an UselessFacts API
- FoodBot: Shares information about food, recipes, and ingredients using Themealdb API
- User-friendly command system to interact with chatbots
- ChatGPT integration for advanced natural language understanding
- Local storage support for message history
- Clone this repository:
git clone https://github.com/Dolabok/chatbot-gpt.git
- Install the necessary dependencies:
cd chatbot-gpt
npm install
- Create a
.env
file in the project root folder to store your API keys:
OPENAI_API_KEY=your_openai_api_key
- Start the development server:
npm start
- Open your browser and navigate to
http://localhost:9090/
to access the chatbot application.
- Type a message in the chat input field and press Enter to send it.
- To interact with a chatbot, start your message with
@BotName
followed by the command and any required arguments. - For example:
@Pokébot search pikachu
or@FactBot random
- Use the
@BotName help
command to get a list of available commands for each chatbot. - Clic on bot name in contact list to fill chat bar with his name
- Start a command with @bots to start a command on all bots ex:
@bots help
src/
: Contains all source code filesbots/
: Chatbot classes and implementationscomponents/
: UI components for rendering chat elementsutils/
: Utility functions and helpersapi/
: API-related functionsstyles/
: SCSS files for styling the applicationindex.js
: Main entry point of the application
webpack.config.js
: Webpack configuration file
- PokéAPI: A RESTful API for Pokémon data
- OpenAI API: GPT-3.5-turbo API for natural language understanding
- UselessFacts API: Get random facts
- Themealdb API Crowd-sourced database of Recipes
This project is licensed under the MIT License. See the LICENSE file for details.