Thanks to visit codestin.com
Credit goes to github.com

Skip to content

twocaretcat/Mergist

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Project category Language Repository size Project license

Project URL

Mergist is an online tool to combine multiple PDF files into one. Mergist has no ads, no file size limits, and your files never leave your device.


πŸ‘‹ About

Mergist is a free online tool that lets you combine multiple PDF files into a single document instantly with no ads, no file size limits, and no uploads to external servers. The merging process runs locally on your device, so the merging process is fast, plus your files never leave your computer!

Features

  • πŸ“„ Unlimited PDF merging: Drag and drop or click to select multiple PDFs and merge them into one file
    • No limits on the amount of files that can be added
    • No limits on file sizes
  • ↕️ Document reordering: Click and drag to reorder documents
  • πŸ”’ Privacy-focused: All work happens in your browser, keeping your documents private and the process fast
  • πŸŽ›οΈ Customizable: Switch between light and dark themes and toggle animations to suit your preferences
  • πŸ†“ 100% Free & Ad-Free: Use the tool without distractions, privacy-invasive tracking, or paywalls β€” no ads, no sign-ups, no limitations
  • πŸ‘¨πŸ»β€πŸ’» Open-source: Know how to code? Help make Mergist better by contributing to the project on GitHub, or copy it and make your own version!

Use Cases

  • πŸ“š Students: Combine lecture notes, assignments, and references into one PDF for submission
  • πŸ’Ό Professionals: Merge reports, contracts, and forms before sharing with clients or colleagues
  • πŸ“‘ Administrators: Assemble documentation packets or archives quickly without software installs
  • βœ‰οΈ Everyday users: Join scanned pages or downloaded PDFs for personal organization
  • πŸ§ͺ Developers & testers: Quickly merge sample files when preparing demos, specs, or docs

Screenshots

🌚 Dark 🌞 Light
Homepage Screenshot of the Mergist homepage in dark mode Screenshot of the Mergist homepage in light mode
Adding files Screenshot of Mergist in dark mode with files added Screenshot of Mergist in light mode with files added
Merge complete Screenshot of Mergist in dark mode with a merged PDF ready to download Screenshot of Mergist in light mode with a merged PDF ready to download
Options Screenshot of Mergist in dark mode with the options menu open Screenshot of Mergist in light mode with the options menu open

How it works

Here is an overview of how the app works:

  1. When you select files to merge, they are read into memory and added to the reorderable list in the file manager
  2. Clicking the Merge Files button triggers the merge process:
    1. We use the PDF-LIB library to create a new PDF document and append the pages from the input PDFs to it
    2. The resulting byte array is then converted to an object URL
    3. The href of the download link is set to the object URL so that you can download the merged PDF

πŸ“¦ Installation

Note

These instructions are for self-hosting Mergist on your own server or developing locally. If you just want to use the web app, you can visit it at mergist.johng.io.

  1. Install Bun (we use Bun, but npm probably works too)

  2. Clone the repository

    git clone https://github.com/twocaretcat/Mergist.git
    cd Mergist
  3. Install dependencies

    bun install
  4. Build & Serve

    bun run develop                 # Start the dev server, or
    bun run build && bun run serve  # Build for production & preview the build

πŸ•ΉοΈ Usage

Adding files

You can add files to the queue by dragging and dropping them onto the page, or by clicking the dropzone to select files from your file system.

Screenshot of the dropzone
Dropzone used to add files

When you add files, the dropzone will be replaced with a file manager, but you can still drag and drop files onto the page to add more. Additionally, an Add File button will appear that you can click to select more files from your file system.

Managing files

The file manager shows the files that have been added to the queue.

Screenshot of the file manager with 2 files added
File manager

The header of the file manager shows the total number of files and the total size of the files. You can use the Add File and Remove All buttons to add more files or remove all files from the queue, respectively.

You can also view the size of each file in the queue, and remove individual files by clicking the Remove button on the right side of each file.

Files will be combined in the order they are shown in the list. The handles on the left side of each file in the queue can be dragged to reorder them.

Merging files

You can merge the files in the queue by clicking the Merge button. During the merge, the button will update to show the progress of the operation. When complete, the merge button will be replaced with a Download button that you can click to download the merged file.

Screenshot of the merge button Screenshot of the progress button with 25% progress shown Screenshot of the download button
Merge button Progress button Download button

More

The footer of the page contains a link to the project's source code and buttons to interact with the app further.

Screenshot of the page footer
Page footer

Clicking the Options button will open a modal that can be used to change settings for the app like the theme and whether animations are enabled.

Screenshot of the options modal
Page footer

The Privacy and About buttons open modals to view the privacy policy and information about the site, respectively.

πŸ›Ÿ Support

Need help? See the support resources for information on how to:

  • request features
  • report bugs
  • ask questions
  • report security vulnerabilities

🀝 Contributing

Want to help out? Pull requests are welcome for:

  • feature implementations
  • bug fixes
  • translations
  • documentation
  • tests

See the contribution guide for more details.

🧾 License

Copyright Β© 2025 John Goodliff (@twocaretcat).

This project is licensed under the AGPL-3.0 License. See the license for more details.

This project includes various resources which carry their own copyright notices and license terms. See LICENSE-THIRD-PARTY.md for more details.

πŸ–‡οΈ Related

Recommended

Other projects you might like:

  • πŸ‘€ Tally: Your favorite dark mode word counter, now with even more themes! Count the number of characters, words, sentences, paragraphs, and lines in your text instantly with Tally
  • πŸ‘€ Shared File Finder for Google Drive: An Apps Script that finds all files/folders on Google Drive that are shared with others and adds them to a Google Sheet

πŸ’• Funding

Find this project useful? Sponsoring me will help me cover costs and commit more time to open-source.

If you can't donate but still want to contribute, don't worry. There are many other ways to help out, like:

  • πŸ“’ reporting (submitting feature requests & bug reports)
  • πŸ‘¨β€πŸ’» coding (implementing features & fixing bugs)
  • πŸ“ writing (documenting & translating)
  • πŸ’¬ spreading the word
  • ⭐ starring the project

I appreciate the support!

Sponsor this project

  •  

Contributors 2

  •  
  •