https://github.com/nabarvn/documon
Chat with your PDF documents on this AI-powered SaaS - leveraging TypeScript, Next.js 14, Tailwind CSS, Pinecone, and Langchain.
https://github.com/nabarvn/documon
kinde langchain-js nextjs openai pinecone planetscale prisma react-query stripe tailwindcss trpc typescript uploadthing upstash-ratelimit vercel-deployment
Last synced: 6 days ago
JSON representation
Chat with your PDF documents on this AI-powered SaaS - leveraging TypeScript, Next.js 14, Tailwind CSS, Pinecone, and Langchain.
- Host: GitHub
- URL: https://github.com/nabarvn/documon
- Owner: nabarvn
- Created: 2023-10-30T13:49:19.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2024-09-10T21:07:40.000Z (8 months ago)
- Last Synced: 2024-09-11T00:56:25.556Z (8 months ago)
- Topics: kinde, langchain-js, nextjs, openai, pinecone, planetscale, prisma, react-query, stripe, tailwindcss, trpc, typescript, uploadthing, upstash-ratelimit, vercel-deployment
- Language: TypeScript
- Homepage: https://documon.nabarun.ai
- Size: 2.4 MB
- Stars: 24
- Watchers: 2
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Documon
A web application that harnesses the power of artificial intelligence to transform the way you interact with PDF documents. Documon enables you to seamlessly engage in a conversation with your PDFs, enjoy smart context summarization, and benefit from annotation features. This makes document exploration and information retrieval a breeze.
## Screenshot
## Running Locally
This application requires Node.js v16.13+.
### Cloning the repository to the local machine:
```bash
git clone https://github.com/nabarvn/documon.git
cd documon
```### Installing the dependencies:
```bash
pnpm install
```### Setting up the `.env` file:
```bash
cp .env.example .env
```> [!IMPORTANT]
> Ensure you populate the variables with your respective API keys and configuration values before proceeding.### Configuring Prisma:
```bash
pnpm prisma generate
``````bash
pnpm prisma db push
```### Running the application:
```bash
pnpm dev
```## Tech Stack
- **Language**: [TypeScript](https://www.typescriptlang.org)
- **Framework**: [Next.js](https://nextjs.org)
- **Styling**: [Tailwind CSS](https://tailwindcss.com)
- **Analytics**: [Vercel Analytics](https://vercel.com/analytics)
- **State Management**: [React Query](https://www.npmjs.com/package/@tanstack/react-query)
- **ORM Toolkit**: [Prisma](https://www.prisma.io/docs/concepts/overview/what-is-prisma)
- **LLM Provider**: [OpenAI](https://platform.openai.com/docs/overview)
- **Vector Database**: [Pinecone](https://docs.pinecone.io/docs/overview)
- **Memory Builder**: [LangChain.js](https://js.langchain.com/docs/get_started/introduction)
- **Rate Limiter**: [Upstash](https://docs.upstash.com/redis)
- **MySQL Database**: [Aiven](https://aiven.io/docs/get-started)
- **Authentication**: [Kinde](https://kinde.com/docs/developer-tools/nextjs-sdk)
- **File Hosting**: [UploadThing](https://docs.uploadthing.com)
- **API Typesafety**: [tRPC](https://trpc.io/docs)
- **Payments**: [Stripe](https://stripe.com/docs/payments)
- **Deployment**: [Vercel](https://vercel.com)## Credits
Learned a ton while building this project. All thanks to Josh for the next level (no pun intended) tutorial!
Don't forget to leave a STAR ๐