OpenSource-Hub
C

ConvertX

16.7k stars·File Management·SHA-256 checksum verified

A self-hosted online file converter supporting over a thousand formats. Easy to deploy with Docker, enables batch conversion, password protection, and multi-account management.

Smart Download

Visit Project Homepage

No installer available yet — head to the source repository

A self-hosted file converter supporting thousands of formats, easy to deploy with Docker, privacy-first.

Core Features

  • Supports 1000+ file formats including documents, images, videos, ebooks, 3D models
  • Batch convert multiple files simultaneously
  • Password protection and multi‑account support for teams
  • Minimal Docker deployment: one command to run
  • Automatic cleanup of old conversion files

What It Can't Do

  • First login requires localhost or HTTPS; set HTTP_ALLOWED=true otherwise.
  • Close registration after creating the first account (ACCOUNT_REGISTRATION=false) to prevent abuse.
  • Ensure sufficient memory and disk space for large file conversions, especially video.
  • Hardware acceleration (e.g., VAAPI) requires additional configuration via FFMPEG_ARGS.

Use Cases

  • Office document conversion (Word to PDF, Markdown to LaTeX) for individuals or teams
  • Batch converting HEIC photos to JPEG with resizing
  • Ebook format conversion (EPUB to MOBI, AZW3 to PDF)
  • Video transcoding (MP4 to GIF, MKV to AVI) and audio conversion
  • 3D model format conversion (STL to OBJ, GLTF to FBX)
  • Internal enterprise deployment to keep sensitive files on‑premises

Detailed Introduction

ConvertX is a self-hosted online file conversion application written in TypeScript, Bun, and Elysia. It supports over a thousand different formats through powerful backends including FFmpeg, LibreOffice, ImageMagick, Pandoc, and Calibre. Key features: batch file processing, password protection, multiple user accounts, automatic file cleanup, and optional hardware acceleration for video conversion. Deployment is straightforward via Docker or Docker Compose. The application is designed for privacy-conscious users who want full control over their file conversions without sending documents to third-party services.

Troubleshooting & FAQ (2)

Troubleshooting
Why does CBZ to PDF conversion fail with 'Could not find any valid pages in comic' error?

The CBZ archive contains WEBP images with .jpg file extensions, which Calibre's comic input plugin rejects as mismatched. Fix: Extract the CBZ with unzip file.cbz, identify mislabeled files using file 001.jpg (output shows RIFF Web/P data), rename them to .webp, then re-zip as .cbz. Alternatively, batch-convert images to proper JPEG format before packing.

GitHub Issue #491
Troubleshooting
Why does ConvertX cause high CPU usage and frequent polling on TrueNAS?

High CPU usage and frequent polling in ConvertX on TrueNAS are typically caused by a misconfigured healthcheck. Ensure your TrueNAS app configuration uses the dedicated /healthcheck path for healthchecks to prevent unnecessary requests every second. This reduces CPU load and allows deeper C-states for power savings.

GitHub Issue #495

Tags

self-hostedfile-converterdockerprivacyformat-conversionbatch-processingweb-appopen-source

Getting Started

1

Download installer

Click the button above to download the installer for your system

2

Install the software

Double-click the downloaded installer and follow the prompts

3

Step 1: Install Docker and Docker Compose on your server

4

Step 2: Create a docker-compose.yml file with the provided snippet (set JWT_SECRET)

5

Step 3: Run docker compose up -d to start the service

Install Guide
  1. Step 1: Install Docker and Docker Compose on your server
  2. Step 2: Create a docker-compose.yml file with the provided snippet (set JWT_SECRET)
  3. Step 3: Run docker compose up -d to start the service
File Integrity

Checksum not available

This project has not published a SHA-256 checksum on its GitHub Release page

SHA256 Checksum

No checksum available

Download directly from GitHub Releases and verify file integrity yourself

All SHA-256 checksums on this platform are extracted from the project's official GitHub Release page, without any modification. You can independently verify them on the GitHub Releases page.

Open Source Transparency

View GitHub Source
Environment Guide

Uninstall Info

Run docker compose down -v to stop and remove containers and volumes, then delete the project directory.

No Extra Dependencies

Ready to use after download. No additional runtime required.

Project Info
LicenseMIT
Last Updated2026-06-27 07:20:22
GitHub Repository

Having issues? Check the FAQ below

2 FAQs

Similar Projects