Skip to content

Latest commit

 

History

History
156 lines (117 loc) · 5.16 KB

File metadata and controls

156 lines (117 loc) · 5.16 KB

🚀 DocuMind AI - Setup Instructions

✅ Current Status

The project has been reviewed and the following components are WORKING:

Backend ✅

  • FastAPI Application: Successfully initializes and runs
  • CV Model (Document Detection): OpenCV-based document detection working
  • OCR Model (Text Extraction): EasyOCR integration working (CPU mode)
  • LLM Model (AI Processing): OpenAI integration working (v0.28.1)
  • Dependencies: All Python packages installed and compatible

Frontend ✅

  • Next.js Application: Successfully builds and compiles
  • React Components: All components properly structured
  • TypeScript: Type checking passes
  • TailwindCSS: Styling system working

🔧 Required Configuration

1. Backend Environment Variables

Create a .env file in the backend/ directory with:

# OpenAI API Configuration
OPENAI_API_KEY=your_actual_openai_api_key_here

# Firebase Configuration (for file storage)
FIREBASE_SERVICE_ACCOUNT_JSON={"type":"service_account","project_id":"your-project-id","private_key_id":"key-id","private_key":"-----BEGIN PRIVATE KEY-----\nYOUR_ACTUAL_PRIVATE_KEY\n-----END PRIVATE KEY-----\n","client_email":"firebase-adminsdk-xxxxx@your-project.iam.gserviceaccount.com","client_id":"client-id","auth_uri":"https://accounts.google.com/o/oauth2/auth","token_uri":"https://oauth2.googleapis.com/token","auth_provider_x509_cert_url":"https://www.googleapis.com/oauth2/v1/certs","client_x509_cert_url":"https://www.googleapis.com/robot/v1/metadata/x509/firebase-adminsdk-xxxxx%40your-project.iam.gserviceaccount.com"}
FIREBASE_STORAGE_BUCKET=your-project-id.appspot.com

# Server Configuration
HOST=0.0.0.0
PORT=8000
ALLOWED_ORIGINS=http://localhost:3000

2. Frontend Environment Variables

Create a .env.local file in the frontend/ directory with:

# Firebase Configuration
NEXT_PUBLIC_FIREBASE_API_KEY=your_firebase_api_key
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your_project_id.firebaseapp.com
NEXT_PUBLIC_FIREBASE_PROJECT_ID=your_project_id
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your_project_id.appspot.com
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_messaging_sender_id
NEXT_PUBLIC_FIREBASE_APP_ID=your_app_id

# Backend API URL
NEXT_PUBLIC_BACKEND_API_URL=http://localhost:8000

🚀 How to Run

Backend

cd backend
# Activate virtual environment (if not already activated)
.\venv\Scripts\Activate.ps1

# Start the backend server
uvicorn main:app --host 0.0.0.0 --port 8000 --reload

Frontend

cd frontend
# Start development server
npm run dev

🌐 Access Points

🔑 Required API Keys

1. OpenAI API Key

2. Firebase Configuration

📋 Setup Checklist

  • Create backend .env file with OpenAI API key
  • Create frontend .env.local file with Firebase config
  • Get OpenAI API key from OpenAI platform
  • Set up Firebase project and get configuration
  • Start backend server
  • Start frontend server
  • Test document upload functionality
  • Test authentication flow

🐛 Known Issues & Solutions

1. OpenAI Version Compatibility

  • Issue: OpenAI v1.3.7 had httpx compatibility issues
  • Solution: Downgraded to OpenAI v0.28.1 (working)
  • Status: ✅ Resolved

2. Environment Variables

  • Issue: Missing .env files cause initialization errors
  • Solution: Create proper environment files (see above)
  • Status: ⚠️ Requires user configuration

3. Firebase Storage

  • Issue: Firebase storage fails without service account
  • Solution: Add Firebase service account JSON to backend .env
  • Status: ⚠️ Requires user configuration

🎯 Next Steps

  1. Configure Environment Variables: Add your actual API keys
  2. Test Backend: Start backend and verify API endpoints
  3. Test Frontend: Start frontend and verify UI loads
  4. Test Integration: Upload a document and test full workflow
  5. Deploy: Use provided Docker and deployment configurations

📚 Additional Resources

  • Backend README: backend/README.md
  • Frontend README: frontend/README.md
  • Main README: README.md
  • Docker Setup: backend/docker-compose.yml
  • Deployment: backend/Procfile, frontend/vercel.json

🆘 Troubleshooting

Backend Won't Start

  • Check if virtual environment is activated
  • Verify all dependencies are installed: pip install -r requirements.txt
  • Check for syntax errors: python -m py_compile main.py

Frontend Won't Build

  • Verify Node.js version (18+ required)
  • Clear Next.js cache: rm -rf .next
  • Reinstall dependencies: rm -rf node_modules && npm install

API Errors

  • Check if backend is running on port 8000
  • Verify CORS configuration in backend
  • Check environment variables are properly set

🎉 The project is ready to run once you configure the environment variables!