Getting Started
FileForge is a free, open-source platform for file conversion and text extraction. No account required — upload a file and get results in seconds.
Choose a tool
Select the conversion type from the tabs on the home page: OCR, Image, Audio, Video, or Document.
Upload your file
Drag and drop or click to browse. Files up to 25 MB are accepted.
Configure options
Pick an output format, quality level, or any tool-specific settings.
Download the result
Once processing finishes, download your converted file or copy the extracted text.
OCR & Text Extraction
Extract text from scanned documents and images using Tesseract OCR.
Supported Formats
Processing Modes
| Mode | Description | Output |
|---|---|---|
Text extraction | Extracts embedded text from digital PDFs | TXT, JSON |
PDF to OCR'd PDF | Runs OCR and produces a searchable PDF | |
OCR + Text | Runs OCR and extracts text in one step | TXT, JSON, PDF |
Image Conversion
Convert between 200+ image formats with optional resize, rotation, and adjustments.
Output Formats
Options
| Option | Description | Default |
|---|---|---|
| Quality | Compression quality for lossy formats (JPG, WebP) | 85% |
| Resize | Set width, height (px), or scale (%) | Original size |
| DPI | Dots per inch for print output | 72 |
| Rotation | Rotate 90°, 180°, or 270° | None |
| Brightness / Contrast | Adjust from 0% to 200% | 100% |
| Grayscale | Convert to black-and-white | Off |
Document Conversion
Convert between document formats using Pandoc.
Supported Input Formats
Output Formats
Audio Conversion
Convert between audio formats or extract audio tracks from video files using FFmpeg.
Output Formats
Bitrate Options
| Bitrate | Use Case |
|---|---|
| 128 kbps | Smaller file size, acceptable quality for speech |
| 192 kbps | Good balance of quality and size (default) |
| 256 kbps | High quality for music |
| 320 kbps | Maximum quality for lossy formats |
Video Conversion
Convert between video formats with quality control via FFmpeg.
Output Formats
Quality Presets
| Preset | Description |
|---|---|
| Low | Smallest file size, reduced resolution |
| Medium | Balanced quality and file size (default) |
| High | Best visual quality, larger file |
REST API
Integrate FileForge into your workflow with the REST API. All endpoints accept multipart form data.
Create a Job
/api/jobs
curl -X POST {{BASE_URL}}/api/jobs \
-F "file=@document.pdf" \
-F "job_type=ocr" \
-F "mode=both" \
-F "ocr_engine=tesseract"
{
"job_id": "a1b2c3d4-...",
"access_token": "xyz789...",
"status": "queued",
"result_url": "/api/jobs/a1b2c3d4-.../result"
}
access_token from the response — you'll need it to check status and download results. Tokens are session-specific and cannot be recovered.
Check Job Status
/api/jobs/{job_id}?token={access_token}
curl "{{BASE_URL}}/api/jobs/a1b2c3d4-...?token=xyz789..."
{
"id": "a1b2c3d4-...",
"status": "completed",
"filename": "document.pdf",
"progress": 100
}
Get Result
/api/jobs/{job_id}/result?token={access_token}
Returns the full result JSON when the job is complete, or 202 while still processing.
curl "{{BASE_URL}}/api/jobs/a1b2c3d4-.../result?token=xyz789..."
Download Output
/api/jobs/{job_id}/download/{format}?token={access_token}
Download the converted file. Format depends on job type:
curl -O "{{BASE_URL}}/api/jobs/a1b2c3d4-.../download/txt?token=xyz789..."
| Job Type | Available Formats |
|---|---|
| OCR | txt, json, pdf |
| Image | image |
| Document | document |
| Audio | audio |
| Video | video |
Job Type Parameters
| Parameter | Job Types | Description |
|---|---|---|
file | All | The file to process (required) |
job_type | All | ocr, image, document, audio, video |
mode | OCR | text, ocr, both |
output_format | Image, Document, Audio, Video | Target format (e.g. png, pdf, mp3) |
quality | Image, Video | Quality level (1-100 for image, low/medium/high for video) |
bitrate | Audio | 128, 192, 256, 320 |
Limits & Cleanup
Configurable via MAX_FILE_MB
Processed files are automatically deleted
Available during your browser session only
Job History & Sessions
FileForge uses session-based access control to protect your privacy:
- Session-only access: Your job history is available only in your current browser session
- Private by default: Each job has a unique access token — only you can view or download your results
- No permanent storage: When you close your browser or clear cookies, you lose access to your job history
- Download immediately: Download your files while your session is active — they won't be accessible later