Skip to content

Yes, another chat-with-your-pdf-like app. But it's open-source (and self-hostable)!

Notifications You must be signed in to change notification settings

jrafaaael/thing-assistant

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

thing-assistant

Yes, another chat-with-your-pdf-like app. But it's open-source (and self-hostable)!

Why we need another one?

Probably we don't need another one, but this implementation is a mobile application instead of a web application. Also we use a local db (postgres with pgvector extension) instead of a vector store service.

Local development

Requirements

  1. Node.js LTS
  2. Yarn
  3. Docker and docker-compose
  4. (OPTIONAL) Expo EAS account and eas-cli (no needed if you have installed xCode and Android Studio)
npm install -g eas-cli
eas login

Run it!

  1. Clone the repo
git clone git@github.com:jrafaaael/thing-assistant.git
cd thing-assistant/

Backend and web

  1. Create .env file and:
  • Provide value for the required COHERE_API_KEY variable
  • Consider changing DATABASE_PASSWORD variable to something randomly generated
  • If you want to access the webapp in a remote device (e.g mobile browser), set BACKEND_IP equals to your machine ip
cp docker/.env.example docker/.env
  1. Install dependencies in host
make install
  1. From root dir, run containers
make dev

Important

The first time you run the containers, you must perform database migrations. To do so, start the containers (see previous step) and, in another terminal, run:

docker compose -f docker/docker-compose.yaml exec thing-assistant-backend npx prisma migrate deploy

Mobile

  1. Install dependencies
cd mobile/
yarn install
  1. Create .env.local file and populate with correct values
cp .env.example .env.local
  1. Create a development build (if you already have xCode and Android Studio installed, you can use --local flag to build the project locally instead of Expo servers)
yarn mobile:build:dev:android # OR yarn mobile:build:dev:ios
  1. Start the mobile development server
yarn start

Features

  • Chat history

  • Replies

  • Background uploads

  • Chat with multiple file extension

  • Chat with web pages

  • Multi-file rooms

  • OCR for pdf files

  • Chat with multiple llm on-the-fly

About

Yes, another chat-with-your-pdf-like app. But it's open-source (and self-hostable)!

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published