Chatrooms that are "moderated" by characters that you can define. Whenever any user sends a message, they will see their message as they have sent it, but the receiver will get a message that has been "moderated". The "moderators" are powered by the OpenAI API and can be set ahead of time.
- Nodejs + Express
- Socket.io
- Svelte + Tailwind + DaisyUI
- OpenAI API
Make sure to have nodejs and npm installed on your computer. I recommend using VSCode to work on the project.
To get started on the project, open the project folder in VSCode, then open 2 terminal tabs. Using one of the terminals, change the directory to "ci-client" by typing cd ci-client
on your shell/terminal.
Install dependencies on both directories:
npm install
Set up environment variables:
- Make sure to edit ".env.sample" by copying and pasting your OPENAI_API_KEY. Save the file as ".env"
To change the "moderators", edit the ci-client/src/stores.js
file and update the relevant images in the ci-client/public
folder.
To run the frontend dev server (on ci-client
folder terminal):
npm run buildwatch
To run the backend dev server (on main folder terminal):
npm run dev
To create a final build of the frontend (on ci-client
folder terminal):
npm run build
To run the backend production server (on main folder terminal):
npm run start