Skip to content

Latest commit

 

History

History
71 lines (50 loc) · 1.39 KB

File metadata and controls

71 lines (50 loc) · 1.39 KB

Paperflow

demo

Paperflow is an AI-powered workflow for scanning, organizing, and searching paper notes.

Check it out live: https://paperflowapp.vercel.app

Running locally

Frontend

  1. Install dependencies
cd client
npm install
  1. Create a .env.local file inside the client directory. You will need to make an account on Clerk to get an API key.
NEXT_PUBLIC_API_URL=http://localhost:8000
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=...
  1. Run in development mode
npm run dev

Backend

  1. Create a virtual environment + install dependencies
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
  1. Create a .env file inside the server directory. You will need to create API keys for Gemini, OpenAI, Pinecone, and Supabase.
CLERK_ISSUER=
CLERK_JWKS_ENDPOINT=
CLERK_SECRET_KEY=
SQLALCHEMY_DATABASE_URL=
GOOGLE_API_KEY=
GEMINI_API_KEY=
OPENAI_API_KEY=
PINECONE_API_KEY=
PINECONE_ENVIRONMENT=
SUPABASE_URL=
SUPABASE_KEY=
SUPABASE_BUCKET=
FRONTEND_URL=http://localhost:3000
  1. Run server
uvicorn main:app

Tech Stack

tech stack

The frontend is built with Next.js, with a FastAPI backend for handling core logic and OpenCV for image processing. The RAG pipeline is built with OpenAI embeddings, Pinecone, and Gemini. The database is PostgreSQL, storing images in Supabase S3.