SyntaxVector is a fast, lightweight, offline-first, open-source PDF viewer and editor. Built using C++20 and Qt 6, it is designed from the ground up to give you full control over your documents without the overhead of cloud dependencies, telemetry, or monthly subscription fees.
In today's software landscape, you are expected to rent your productivity. Major PDF editors demand recurring monthly subscriptions just to let you edit text, sign a form, or run OCR on a document.
We believe that software should be a tool you own, not a service you rent. Here is why SyntaxVector is built differently:
- Zero Subscriptions: SyntaxVector is 100% free and open-source. Download it, run it, and keep it forever. No credit cards, no tiers, no expiration dates.
- 100% Offline & Privacy-First: Your documents are yours. SyntaxVector processes everything locally on your machine. No documents are uploaded to any external servers or "AI clouds" for analysis.
- Blazing Fast Native Performance: Built with native C++20, MuPDF, and Qt 6. Unlike bloated Electron or web-based editors, SyntaxVector starts instantly and uses minimal memory.
- Transparency & Control: Open-source software means you can inspect the code, modify it to fit your needs, and compile it yourself. You are in control of your digital tools.
- Ultra-Fast Viewer: Zero-copy rendering powered by MuPDF for smooth, 60 FPS scrolling and high-fidelity text display.
- Deep Editing: Modify text, objects, and page layouts directly inside the PDF using PoDoFo and QPDF.
- Local OCR: Convert scanned documents and images into searchable PDFs using Tesseract and OpenCV—completely offline.
- Smart Annotations: Add highlights, underlines, and sticky notes saved directly into the standard PDF
/Annotsdictionary. - Document Structure: Merge, split, rotate, and reorder pages effortlessly.
- Local Security & Signatures: Secure your documents with AES-256 encryption and apply X.509 digital signatures using OpenSSL.
SyntaxVector is built on a modern, high-performance C++ stack:
- Language: C++20 (using concepts, ranges, and smart pointers)
- UI Framework: Qt 6 (Qt Widgets for canvas rendering, QML for modern UI components)
- Build System: CMake + Ninja
- Package Manager: vcpkg
- Core Engines:
- MuPDF: For fast document rendering
- PoDoFo: For PDF object manipulation
- QPDF: For structural operations (merge/split)
- Tesseract + OpenCV: For offline OCR
- OpenSSL: For cryptography and signatures
To build SyntaxVector from source, you will need:
- A C++20 compliant compiler (MSVC 2022, GCC 12+, or Clang 15+)
- CMake (version 3.22 or higher)
- Ninja build tool
- vcpkg (package manager)
-
Clone the repository:
git clone https://github.com/<your-username>/SyntaxVector.git cd SyntaxVector
-
Configure and build using CMake:
cmake -B build -S SyntaxVector --preset=default cmake --build build
-
Run the application:
./Run_SyntaxVector.bat
SyntaxVector is open-source software licensed under the MIT License. Feel free to use, modify, and distribute it as you see fit.