Code Monkey home page Code Monkey logo

chatwire's Introduction

Chatwire

Chatwire is a clone of ChatGPT made with Laravel Breeze using Livewire and the OpenAI PHP client.

Description

In this project, we have a Laravel 10 Breeze with Livewire, a login session, and access to OpenAI's ChatGPT API. The entire Laravel project is based on TailwindCSS using Flowbite, Vite.js to compile scripts, MySQL. As far as the extra packages Flowbite, Laravel-Livewire, openai-php, livewire-alert are used.

Purpose

Chatwire is a Laravel-based project that calls OpenAI's API and displays the responses in Laravel Breeze Dashboard using Livewire. When you finish your ChatBot conversation, you can send it in your email or save it for future use. You can see your saved conversations on the dashboard page using pagination.

Features

Model Configuration

  • All ChatGPT Models (GPT-4)
  • Custom System Instruction
  • Temperature Control
  • Maximum Token Control

Chat Experience

  • Prompt Library

Wordpress Integration

  • SEO optimization proposal (focus keywords, meta title, meta description) for latest post

Chat Management

  • Share Chat by email
  • Save Chat to Database
  • Paginate Chats

Security and Privacy

  • Private By Default
  • Self-hosted

Technologies Used

This project requires the following technologies:

  • PHP 8.1+
  • MySQL
  • OpenAI account for API Key

The project uses the following technologies:

  • Laravel 10 Breeze
  • Livewire
  • TailwindCSS
  • Flowbite
  • Vite.js
  • MySQL
  • openai-php
  • livewire-alert

Getting Started

To run Chatwire locally, follow these steps:

  1. Clone this repository
  2. Run composer install
  3. Copy .env.example to .env
  4. Add your OpenAI API key in .env file at OPENAI_API_KEY App Screenshot
  5. Add your SMTP configuration. This will be used to send your conversation to your email. App Screenshot
  6. Run php artisan key:generate
  7. Run php artisan migrate
  8. Run npm install
  9. Run npm run build
  10. Run php artisan serve
  11. Add the following line to your cronjobs: * * * * * cd /path-to-your-project && php artisan schedule:run >> /dev/null 2>&1 The above will be used for the email queue job that it is used for sending the emails
  12. Open the link: http://127.0.0.1:8000

Usage

To use Chatwire, follow these steps:

  1. Start a conversation with the chatbot on the dashboard page.
  2. When you finish the conversation, you can save it or send it to your email.
  3. You can view your saved conversations on the dashboard page using pagination.

Screenshots

Here are some screenshots of Chatwire in action:

App Screenshot

App Screenshot

App Screenshot

App Screenshot

Contributing

If you'd like to contribute to Chatwire, here's how you can get started:

  1. Fork this repository
  2. Create a new branch (git checkout -b my-new-branch)
  3. Make your changes
  4. Commit your changes (git commit -am 'Add some feature')
  5. Push to the branch (git push origin my-new-branch)
  6. Create a new Pull Request

We welcome contributions from anyone interested in improving Chatwire

chatwire's People

Contributors

theokafadaris avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.