Full-Stack Developer Needed to Complete AI Document Analysis SaaS
Budget: $20.0 - $30.0
HOURLY / FULL_TIME
⭐ 5.00 (1)
AUS
next.js, postgresql, docker, react-js
We are looking for a full-stack developer to complete the first production-ready version of an AI document analysis platform.
The application is partially built. The main UI, authentication flow and basic document upload functionality already exist, but several backend workflows and SaaS features still need to be completed.
Users will upload business documents such as contracts, policies, reports and proposals, then ask questions or generate structured summaries from the uploaded content.
This is not a research or model-training project. We are primarily looking for someone who can complete a practical SaaS product using existing AI APIs and modern web technologies.
The ideal developer is comfortable working across Next.js, Python APIs, databases, background processing and deployment.
## Current state
The existing application includes:
* Next.js frontend
* basic responsive dashboard
* login and registration pages
* document upload interface
* initial PostgreSQL database schema
* basic OpenAI API integration
* GitHub repository
* Figma designs for the remaining screens
Some areas may need cleanup or restructuring, but we do not want the application rebuilt from scratch unless there is a clear technical reason.
## Main scope
### Document upload and processing
Users should be able to:
* upload PDF, DOCX and TXT files
* upload multiple documents to a workspace
* see upload and processing status
* retry failed documents
* remove documents
* view document metadata
* organise documents into projects or folders
Uploaded files should be stored outside the application server.
Cloudflare R2 is preferred, although we are open to another S3-compatible storage solution if justified.
### Document extraction
The backend should:
* extract text from supported documents
* identify scanned or image-based PDFs
* process documents asynchronously
* split extracted content into useful sections or chunks
* preserve page or section references
* store processing errors
* prevent duplicate processing where possible
Basic OCR support is required for scanned PDFs. We are open to using an external OCR service for the MVP.
### AI question answering
Users should be able to open a project and ask questions based on the documents uploaded to that project.
Requirements include:
* answers must be grounded in the uploaded documents
* responses should stream to the frontend
* answers should include source references
* source references should show the document name and page where available
* conversation history should be stored
* users should be able to start and delete conversations
* the system should avoid answering from general model knowledge when the documents do not contain the answer
We expect to use OpenAI or Anthropic initially, but the AI provider should not be tightly coupled throughout the codebase.
### Structured document outputs
Users should also be able to select one or more documents and generate:
* executive summary
* key findings
* risks or concerns
* action items
* extracted dates
* extracted organisations and people
* custom instructions entered by the user
Generated results should be editable before being exported.
### SaaS accounts and permissions
The application requires:
* user registration
* email verification
* password reset
* secure sessions
* protected application routes
* organisation or workspace support
* workspace owner and member roles
* data separation between workspaces
* basic account settings
Full enterprise SSO is not required in this phase.
### Usage limits
We need a basic usage system that records:
* number of uploaded documents
* total storage used
* AI requests
* estimated token usage
* processing failures
The application should support free and paid plan limits, even if the paid billing workflow is completed later.
### Stripe integration
Implement a simple subscription flow with:
* monthly subscription
* one paid plan
* Stripe Checkout
* Stripe customer portal
* webhook handling
* subscription status stored in the database
* feature or usage restrictions based on plan status
Complex metered billing is not required.
### Admin area
A simple internal admin screen should show:
* registered users
* organisations
* subscription status
* document counts
* processing failures
* recent AI usage
* ability to disable an account
This does not need to be a separate application.
## Preferred architecture
We currently expect the platform to use:
### Frontend
* Next.js
* React
* TypeScript
* Tailwind CSS
* shadcn/ui
* React Hook Form
* Zod
* TanStack Query where appropriate
### Application and edge API
* Hono
* TypeScript
* Cloudflare Workers
* request validation
* authentication middleware
* rate limiting
* signed upload URLs
* Stripe webhooks
We are open to keeping straightforward application endpoints inside Next.js if that produces a cleaner architecture. Please do not introduce Hono simply to check a technology box.
### AI and document-processing service
* Python
* FastAPI
* Pydantic
* asynchronous processing
* document extraction
* OCR integration
* chunking and embeddings
* LLM provider integration
### Data and storage
* PostgreSQL
* pgvector
* Drizzle ORM or SQLAlchemy
* Redis or a suitable queue backend
* Cloudflare R2
### Deployment
The frontend and lightweight APIs may run on Cloudflare.
The Python processing service should be containerised and capable of being self-hosted on a standard Linux VPS.
Expected deployment components include:
* Docker
* Docker Compose
* Caddy or Nginx
* HTTPS
* environment-based configuration
* GitHub Actions
* basic backups
* error monitoring
* setup documentation
We do not need Kubernetes.
## Deliverables
* completed application source code
* working frontend and backend integration
* document-processing pipeline
* AI question-answering workflow
* Stripe subscription flow
* Cloudflare R2 integration
* production deployment
* Docker configuration
* database migrations
* environment variable template
* README and setup instructions
* short handover document
* basic automated tests for critical workflows
* resolution of major application errors discovered during development
## Required experience
Please apply only if you have relevant experience with most of the following:
* Next.js
* React
* TypeScript
* Python
* FastAPI
* PostgreSQL
* REST API development
* OpenAI or Anthropic APIs
* document processing
* RAG or semantic search
* vector embeddings
* pgvector or another vector database
* streaming AI responses
* Docker
* authentication
* SaaS subscriptions
* Stripe webhooks
* object storage
* Linux deployment
* Git and GitHub
Cloudflare Workers, Hono and R2 experience are strongly preferred but not mandatory if your other experience is relevant.
## What we are not looking for
* a no-code implementation
* an application built entirely using an AI website builder
* model training from scratch
* unnecessary microservices
* a complete redesign
* an agency handing the project to an unknown junior developer
* someone who only has experience creating basic ChatGPT wrappers
## When applying
Please include:
1. One relevant AI or document-processing application you have built.
2. Your specific role on that project.
3. The stack used.
4. How you would divide responsibilities between Next.js, Hono and FastAPI.
5. How you would preserve page-level document citations.
6. Your availability over the next four weeks.
Please begin your proposal with the words *Document Workspace* so we know you read the full description.
We will provide repository access and a walkthrough to shortlisted candidates.
Öppna på Upwork