Welcome to the Devablos Project V2, a full-stack chatbot application leveraging React for the frontend and Node.js with Express for the backend. This project integrates WebSocket for real-time interactions and uses OpenAI's API for advanced functionalities.
- Real-Time Communication: WebSocket and Secure WebSocket (WSS) integration.
- SSL Security: Configured SSL certificates for HTTPS communication.
- Weather Information: Fetch and display weather conditions using OpenWeather API.
- Flexible Protocols: Toggle between WebSocket and HTTPS directly from the UI.
Visit our live application at Devablos V2 to see it in action.
devablos-project-v2/
βββ client/
β βββ public/
β βββ src/
β βββ Dockerfile
β βββ package.json
β βββ README.md
βββ server/
β βββ src/
β βββ Dockerfile
β βββ package.json
β βββ README.md
βββ .dockerignore
βββ docker-compose.yml
βββ .gitignore
βββ CODE_OF_CONDUCT.md
βββ LICENSE
βββ README.md
- Docker and Docker Compose
- Node.js and npm
Before running the application, you need to set up the environment variables and SSL certificates:
-
Environment Variables:
- Copy
.env.example
to.env
in both theclient/
andserver/
directories. - Modify the
.env
files to include your specific configurations, such as API keys and other necessary settings.
- Copy
-
SSL Certificates:
-
Use
mkcert
to create SSL certificates. Ifmkcert
is not installed, install it first. -
Run the following commands to generate certificates:
mkcert -install mkdir -p .certs .private mkcert -key-file ./.private/localhost-key.pem -cert-file ./.certs/localhost.pem localhost 127.0.0.1 ::1
-
After setting up the environment variables and SSL certificates, you can start the application using Docker Compose:
docker-compose up --build
This command builds the Docker images and starts the containers defined in docker-compose.yml
. Check the services are running:
- Frontend at:
http://localhost:3000
- Backend at:
http://localhost:5000
For more details on project setup, features, and contributions, refer to the specific README files in the client
and server
directories:
Contributions are welcome! Please read our Code of Conduct before contributing to help maintain a friendly and inclusive environment.
This project is licensed under the MIT License - see the LICENSE file for details.