Portfolio / C# / Desktop lane / UniversalConverterX
CS

UniversalConverterX

Native Windows file converter with context menu integration — 1000+ formats

PythonDesktop
Delivery
Source-first
Browse code, README, and release notes on GitHub.
Primary lane
C# / Desktop lane
The clearest adjacent context for this project inside the portfolio.
Freshness
Updated Jun 6, 2026
Latest release
No tag yet
README is the clearest project overview right now.

Preview

Using the generated project card as a clean fallback until a live capture is available.

UniversalConverterX card

Source at github.com/SysAdminDoc/UniversalConverterX.

Proof

Structured claims with explicit source links, so the page can show why the project matters without leaning on unsourced marketing copy.

Problem

Power users need broad local file conversion without uploading private files to SaaS tools or chaining fragile one-off converters together.

Platform Support

  • Windows
  • WinUI 3
  • Sidecar conversion engines

Install Path

Use the repository README and releases for the current Windows build and supported converter backends.

Build Evidence

  • Greatest Hits positions the project as a 1000+ format desktop converter with media, document, archive, PDF, subtitle, font, ebook, and OCR coverage.
  • The catalog keeps it in the Desktop lane so visitors can compare it with other local-first Windows tooling.
  • Repository source and README are linked for anyone who needs to inspect the converter shell before using it on local files.

Known Limitations

Actual format coverage depends on bundled or configured sidecar engines, so unsupported codecs and malformed files still need specialist tools.

Sources

Case Study

Most file-conversion workflows become a trail of ad-heavy websites, trialware, and format-specific utilities. UniversalConverterX turns that category into a local desktop command center: one interface, sidecar engines where they make sense, and no need to hand private files to a remote service.

Key Decisions

  • Used a desktop shell around proven sidecar engines instead of trying to reimplement every codec and parser from scratch.
  • Grouped conversion families by user intent - media, documents, archives, subtitles, fonts, ebooks, OCR - so breadth does not become a flat, unsearchable list.
  • Kept conversion local by default, preserving the portfolio rule that utility tools should not require an account, cloud upload, or subscription.

Outcomes

  • Gives the portfolio a flagship desktop utility that demonstrates orchestration across many external toolchains.
  • Turns the "1000+ formats" claim into a project-level story instead of leaving it as a single Greatest Hits sentence.
  • The sidecar-engine pattern is reusable for other local media, document, and repair workflows.

README

Cached at build time, cleaned up for in-site reading, and linked back to the canonical GitHub source.

4 min read 724 words 28 sections
Contents
  1. UniversalConverter X
  2. Modules
  3. Toolbox highlights
  4. Architecture
  5. Features
  6. Supported Converters
  7. Installation
  8. Requirements
  9. Quick Start
  10. CLI Usage
  11. Commands
  12. Convert Options
  13. Project planning
  14. Project Structure
  15. Building from Source
  16. Prerequisites
  17. Build
  18. Publish
  19. Architecture
  20. Strategy Pattern
  21. Orchestrator
  22. Configuration
  23. Installing Converter Tools
  24. Windows (winget)
  25. Windows (Chocolatey)
  26. License
  27. Contributing
  28. Acknowledgments

UniversalConverter X

The all-in-one media tool for Windows — convert, compress, edit, download, record, and 25+ AI-powered tools, all running locally.

A free, open-source alternative to Wondershare UniConverter and similar paid suites. No subscriptions, no cloud processing, no telemetry.

Version Platform License

Modules

  • Converter — 1000+ formats via FFmpeg, ImageMagick, Pandoc, libvips, libjxl, libheif, Inkscape, Calibre, Assimp, Ghostscript, LibreOffice, resvg, Potrace.
  • Compressor — preset profiles (web, email, archive) and quality slider, FFmpeg backend.
  • Video Editor — trim, crop, rotate, upscale, filter, audio adjust, batch.
  • Downloader — 1000+ sites: YouTube, Twitch, Kick, Rumble, Vimeo, X, Facebook, podcasts, direct URLs.
  • Recorder — screen, webcam, system audio, microphone.
  • Toolbox — 40+ specialized tools across Image, Video, AI, Audio, Documents, Disc, and Other categories.

Toolbox highlights

Category Tools
Image Image Converter · GIF Maker · Image Upscaler (AI) · AI Portrait · Slideshow Maker · Metadata Editor
Video Smart Trimmer (AI) · Auto Reframe (AI) · Auto Crop (AI) · Watermark Editor · Frame Snapshot · Scene Detection · Timeline Preview · Track Manager
AI Background Remover · Subtitle Remover · Auto Subtitle · Vocal Remover · Voice Changer · Text-to-Speech · Speech-to-Text · Photo Restoration · Lip Reading
Audio Audio Converter · Audio Compressor · Noise Remover (AI)
Documents Document Converter (LibreOffice) · Archive Tool (7-Zip) · PDF Tools (pikepdf) · Subtitle Converter (pysubs2) · Font Converter (fonttools) · eBook Converter (Calibre) · OCR (Tesseract)
Disc DVD Burn · DVD Copy · CD Burner
Other Format Inspector · Chapter Marks · Watch Folders · History · VMAF Quality

Architecture

UCX is a C# / .NET 10 / WinUI 3 shell that hosts the Converter natively and orchestrates specialized engines as sidecar processes. Each sidecar lives under tools/<name>/ and follows the NDJSON CLI contract documented in `tools/README.md`.

Sidecar engines (vendored as binaries land per phase): VideoCrush, ClipForge, StreamKeep, AlphaCut, VideoSubtitleRemover, LipSight, Vertigo, FrameSnap, GifStudio, HEICShift.

Features

  • Right-Click Context Menu — convert files directly from Windows Explorer.
  • Local Processing — all conversions happen on your machine. No telemetry.
  • Progress Tracking — real-time progress with speed and ETA, NDJSON sidecar contract.
  • Batch Conversion — convert and process multiple files at once.
  • Modern UI — WinUI 3 with dark theme and Mica effects.
  • CLI Support — full command-line interface for automation (ucx).

Supported Converters

Converter Input Formats Output Formats Category Priority
FFmpeg 472+ 199+ Video, Audio 100
resvg 1 (SVG) 4+ SVG Rendering 97
libheif 4+ 3+ HEIC/HEIF 96
Inkscape 10+ 17+ Vector Graphics 95
libjxl 2+ 3+ JPEG XL 94
libvips 40+ 25+ High-Perf Images 92
ImageMagick 245+ 183+ General Images 90
Potrace 5+ 6+ Raster to Vector 88
Calibre 26+ 19+ E-books 85
Assimp 40+ 25+ 3D Models 85
Pandoc 43+ 65+ Documents 80
Ghostscript 4+ 8+ PDF Processing 75
LibreOffice 41+ 22+ Office Docs 70

Installation

Requirements

  • Windows 10 21H2+ or Windows 11
  • .NET 10 Runtime
  • One or more converter tools (FFmpeg, ImageMagick, etc.)

Quick Start

  1. Download the latest release
  2. Run the installer
  3. Install converter tools (or use ucx tools download)
  4. Start converting!

CLI Usage

# Convert a single file
ucx convert video.mp4 -o mp3

# Convert multiple files
ucx convert *.png -o webp -q high

# List supported formats
ucx list formats

# Check installed tools
ucx tools check

# Show file info
ucx info document.pdf

Commands

Command Description
convert Convert one or more files
list List formats, converters, or categories
info Show information about a file
config View or modify configuration
tools Manage converter tools

Convert Options

-o, --output <FORMAT>     Output format (required)
-d, --directory <PATH>    Output directory
-q, --quality <LEVEL>     Quality: lowest, low, medium, high, highest, lossless
-f, --force               Overwrite existing files
-p, --parallel <COUNT>    Maximum parallel conversions
--converter <ID>          Force a specific converter
--hw-accel                Enable hardware acceleration

Project planning

Project Structure

UniversalConverterX/
├── src/
│   ├── UniversalConverterX.Core/          # Core conversion engine
│   │   ├── Interfaces/                    # Core interfaces
│   │   ├── Models/                        # Data models
│   │   ├── Converters/                    # 13 strategy implementations
│   │   ├── Services/                      # Orchestrator, ToolManager, ToolDownloader
│   │   ├── Configuration/                 # Options
│   │   └── Detection/                     # Magic bytes format detection
│   ├── UniversalConverterX.Console/       # CLI application
│   │   └── Commands/                      # CLI commands
│   ├── UniversalConverterX.UI/            # WinUI 3 application
│   │   ├── Views/                         # XAML views
│   │   ├── ViewModels/                    # MVVM ViewModels
│   │   └── Services/                      # UI services
│   └── UniversalConverterX.ShellExtension/ # Windows Explorer integration
├── tests/
│   └── UniversalConverterX.Core.Tests/    # Unit tests
├── installer/
│   ├── msix/                              # MSIX package manifest
│   └── wix/                               # WiX MSI installer
└── tools/
    └── bin/                               # CLI tool binaries

Building from Source

Prerequisites

  • .NET 10 SDK
  • Windows 10 SDK (for UI project)
  • Visual Studio or Build Tools with MSBuild and Windows App SDK build tools (required for the WinUI project)

Build

# Build the full Windows solution
.\build.ps1 -Target Build -Configuration Release

# Run the focused core test suite
.\build.ps1 -Target Test -Configuration Release

# CLI/core-only builds can still use dotnet directly
dotnet build src/UniversalConverterX.Console/UniversalConverterX.Console.csproj -c Release

Publish

# Publish CLI and WinUI output
.\build.ps1 -Target Publish -Configuration Release

Architecture

Strategy Pattern

Each converter tool implements IConverterStrategy:

public interface IConverterStrategy
{
    string Id { get; }
    string Name { get; }
    int Priority { get; }
    bool CanConvert(FileFormat source, FileFormat target);
    Task<ConversionResult> ConvertAsync(ConversionJob job, ...);
}

Orchestrator

The ConversionOrchestrator routes conversions to the best available strategy:

  1. Detects input format (magic bytes + extension)
  2. Finds converters supporting the conversion
  3. Selects highest priority converter
  4. Executes conversion with progress tracking

Configuration

Configuration is stored in %APPDATA%\UniversalConverterX\config.json:

{
  "ToolsBasePath": "C:\\Tools\\UniversalConverterX",
  "MaxConcurrentConversions": 4,
  "EnableHardwareAcceleration": true,
  "PreserveMetadata": true,
  "DefaultQuality": "High"
}

Installing Converter Tools

Windows (winget)

winget install Gyan.FFmpeg
winget install ImageMagick.ImageMagick
winget install JohnMacFarlane.Pandoc
winget install calibre.calibre
winget install TheDocumentFoundation.LibreOffice

Windows (Chocolatey)

choco install ffmpeg imagemagick pandoc calibre libreoffice

License

MIT License - see LICENSE file for details.

Contributing

Contributions are welcome! Please read CONTRIBUTING.md for guidelines.

Acknowledgments

Read on GitHub → github.com/SysAdminDoc/UniversalConverterX

Esc
Start with the strongest work, a key route, or the full archive.