Skip to content

nuromirzak/cloudmix

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contributors Forks Stargazers Issues MIT License LinkedIn


Logo

Cloudmix

Real-time chat with friends and AI bots for smarter conversations
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Contributing
  4. License

About The Project

Product Name Screen Shot

This pet project is a real-time chat application developed for educational purposes. It leverages WebSocket technology to enable instant messaging between users. Moreover, the app integrates OpenAI's API, creating AI-powered chatbots that users can interact with when they want to pass the time or practice conversing.

(back to top)

Built With

  • React
  • Tailwind
  • Vite
  • Spring Boot
  • Postgresql
  • Openai
  • Zustand
  • React Router

(back to top)

Getting Started

  1. Run PostgreSQL database in backend directory
    docker-compose -f .\compose.dev.yaml --env-file .\.env.docker up -d
  2. Set the environment variables
    export DB_URL=
    export DB_USERNAME=
    export DB_PASSWORD=
    export SPRING_AI_OPENAI_API_KEY=
  3. Build and run the Spring Boot application in backend directory (requires Java 21)
    ./gradlew bootRun
  4. Install NPM packages in frontend directory
    npm install
  5. Enter the backend URL in frontend/.env file
     VITE_API_BASE_URL=http://localhost:8080
     VITE_WS_URL=ws://localhost:8080/ws
  6. Change git remote url to avoid accidental pushes to base project
    git remote set-url origin nuromirzak/cloudmix
    git remote -v # confirm the changes
  7. Run the frontend application
     npm run dev

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

Top contributors:

contrib.rocks image

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)