https://github.com/galaxyxyz5/documon
Chat with your PDF documents on this AI-Powered SaaS.
https://github.com/galaxyxyz5/documon
langchain-js nextjs openai pinecone prisma react-query stripe tailwindcss trpc typescript uploadthing
Last synced: 12 days ago
JSON representation
Chat with your PDF documents on this AI-Powered SaaS.
- Host: GitHub
- URL: https://github.com/galaxyxyz5/documon
- Owner: galaxyxyz5
- Created: 2024-12-17T08:13:09.000Z (4 months ago)
- Default Branch: master
- Last Pushed: 2024-12-24T06:38:56.000Z (4 months ago)
- Last Synced: 2025-04-15T04:53:02.216Z (12 days ago)
- Topics: langchain-js, nextjs, openai, pinecone, prisma, react-query, stripe, tailwindcss, trpc, typescript, uploadthing
- Language: TypeScript
- Homepage: https://documon.nabarun.ai
- Size: 2.49 MB
- Stars: 5
- Watchers: 1
- Forks: 0
- 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 ๐