DoConvo is a comprehensive chat application with PDF integration. This project is designed to provide a seamless chat experience where users can upload PDF files, create chats around them, and interact with an AI assistant. The AI assistant uses the OpenAI API to generate responses based on the chat context. The application also includes a subscription feature, where users can subscribe to access premium features. The subscription process is handled using Stripe for payments and webhooks for event processing.
Key Features of DoConvo:
- PDF Upload and Chat: Upload PDF files and create chats around them.
- AI Assistance: Interact with an AI assistant that generates responses based on chat context.
- Subscription Feature: Access premium features through a subscription model handled by Stripe.
- Seamless Integration: Integrates various modern technologies for a robust and efficient user experience.
- Next.js
- React
- TypeScript
- Tailwind CSS
- Clerk
- Drizzle ORM
- PostgreSQL
- AWS S3
- OpenAI API
- Stripe
- Pinecone
Follow the steps below to install and setup the project:
-
Clone the repository
Open your terminal and run the following command:
git clone https://github.com/arnishbaruah/doconvo.git
-
Navigate to the project directory
cd doconvo
-
Install Node.js
The project requires Node.js version 13.4.19 or later. You can download it from here.
-
Install the required dependencies
Run the following command to install all the required dependencies:
npm install
This will install all the dependencies listed in the
package.json
file, including Next.js, React, React DOM, Axios, Stripe, Tailwind CSS, and other specific dependencies such as "@aws-sdk/client-s3" and "@clerk/nextjs". -
Setup environment variables
Create a
.env
file in the root directory of your project and add the required environment variables. -
Run the project
Now, you can run the project using the following command:
npm run dev
Open http://localhost:3000 with your browser to see the result.
We welcome contributions from the community to make DoConvo even better! If you're a developer, designer, or have any other expertise, follow these steps to contribute:
- Fork the repository to your GitHub account.
- Create a new branch for your feature or bug fix.
- Make your changes and commit with descriptive messages.
- Push your branch to your forked repository.
- Open a pull request to our main repository, explaining the changes you made.
We'll review your contribution and work together to integrate it into the project.
This project is licensed under the MIT License.
Have questions or feedback? Feel free to reach out:
LinkedIn: Arnish Baruah
Let's create a seamless chat experience with DoConvo! 🌐💬