ChatGPT-Assistant
This project is a secondary development website based on ChatGPT, aiming to realize the online chat function. The technologies used include front-end frameworks Vue3, TypeScript and ElementUI and back-end technologies SpringBoot, MongoDB, Spring Data MongoDB and Spring WebSocket.
introduce yourself
I am Qifan, a full-stack programmer who just graduated from Huaqiao University. The main technology stack backends are SpringBoot, JPA (Hibernate), MongoDB, Mybatis, SQL, etc. Front-end Vue3, Typescript, Taro applet, Uni-App, etc.
Main functions
- Log in to the registered user sa-token to manage the user's session.
- Online chat users enter content in the chat box and send it to the backend. The backend forwards the request to Open AI's Chat GPT interface, and after returning the data, it is pushed to the user through WebSocket.
Project operation
clone warehouse
git clone https://github.com/qifan777/chatgpt-assistant.git
Catalog introduction
- bom dependency management
- chatgpt-assistant-client vue client
- src
- api stores the interface for calling the backend
- assets static resource pictures, etc.
- components common components
- router routing
- stores pinia status management
- views page
- home
- Private components used by components home page
- HomeView.vue home page
- chatgpt-assistant-server java core code
- infrastructure infrastructure
- infrastructure-common common class
- infrastructure-generator code generator
- generator-core annotation definition
- generator-processor generator logic
- infrastructure-security universal login authentication interceptor
Environment installation
- jdk 17
- mongodb
docker run -d
--name mongo
-e MONGO_INITDB_ROOT_USERNAME=root
-e MONGO_INITDB_ROOT_PASSWORD=123456
-p 27017:27017
mongo:6.0.5-jammy
- redis
docker run --name redis -p 6379:6379 -d redis
- node18
run
front end
- vscode/webstorm import chatgpt-assistant-client
- Run command
rear end
- idea imports the entire folder of chatgpt-assistant
- mvn install
- Run the Application under chatgpt-assistant-server.