In today’s digital world, PDFs are everywhere—reports, research papers, contracts, and more. Managing and viewing these files across multiple devices can be a hassle. Enter PdfDing, a self-hosted PDF manager and viewer designed to simplify your workflow. With its minimalistic design, ease of use, and powerful features, PdfDing is the ultimate solution for organizing and accessing your PDFs. Let’s dive into everything you need to know about PdfDing and why it’s a game-changer for PDF management.

What is PdfDing? Your All-in-One PDF Solution

PdfDing is a self-hosted PDF manager and viewer that allows you to view and organize your PDF files seamlessly across devices. Built with simplicity and speed in mind, PdfDing is easy to set up using Docker, making it accessible even for those with minimal technical expertise.

The name “PdfDing” combines “PDF” with “ding,” the German word for “thing.” As the name suggests, PdfDing is your go-to tool for managing PDFs. Inspired by the popular bookmark manager LinkDing, PdfDing offers a clean, intuitive interface with customizable themes, including dark mode. Plus, its support for Single Sign-On (SSO) via OIDC makes it a breeze to integrate into existing systems.

Key Features of PdfDing: Why It Stands Out

PdfDing isn’t just another PDF viewer—it’s a comprehensive solution packed with features tailored to enhance your PDF management experience. Here’s what makes PdfDing stand out:

  1. Seamless Browser-Based Viewing: Access and view your PDFs directly in your browser, whether you’re on a desktop, laptop, or mobile device.
  2. Organize with Tags: Keep your PDFs organized using tags, making it easy to locate specific files when you need them.
  3. Clean and Responsive UI: Enjoy a clutter-free, user-friendly interface that adapts to your device’s screen size.
  4. Dark Mode and Themed Customization: Personalize your experience with dark mode and colored themes to suit your preferences.
  5. Reading Progress Tracking: PdfDing remembers where you left off, so you can pick up right where you stopped reading.
  6. SSO Support via OIDC: Integrate PdfDing into your existing setup with Single Sign-On support for secure, hassle-free access.
  7. User Upload Capability: Every user can upload their own PDFs, eliminating the need for admin curation.
  8. Simple Admin Panel: Manage users effortlessly with PdfDing’s straightforward admin area.

Why Choose PdfDing? Addressing Common Pain Points

The creator of PdfDing developed this tool to address specific frustrations with existing PDF solutions. Many PDF managers are either too resource-heavy, lack user-friendly features, or don’t support seamless browser viewing on mobile devices.

PdfDing was built to meet these needs:

  • Browser-Based Viewing: Unlike other tools that force mobile users to download files, PdfDing displays PDFs directly in the browser.
  • Minimal and Lightweight: PdfDing focuses on simplicity, avoiding unnecessary features that slow down performance.
  • User Freedom: Every user can upload and manage their own PDFs, fostering a collaborative environment.

How to Install PdfDing with Docker Compose

Setting up PdfDing is straightforward with Docker Compose. Here’s a step-by-step guide to get you started:

1. Create a docker-compose.yml file with the following configuration:

version: '3'

services:
  pdfding:
    container_name: pdfding
    image: mrmn/pdfding:latest
    volumes:
      - sqlite_data:/home/nonroot/pdfding/db
      - media:/home/nonroot/pdfding/media
    environment:
      # use a long random secret
      SECRET_KEY: some_secret
      # the domain where you want to access PdfDing, e.g. pdfding.com
      HOST_NAME: 127.0.0.1
      # In production set to TRUE
      CSRF_COOKIE_SECURE: FALSE
      # In production set to TRUE
      SESSION_COOKIE_SECURE: FALSE
#      # use this if you want to use OIDC
#      OIDC_ENABLE: TRUE
#      OIDC_CLIENT_ID: pdfding
#      OIDC_CLIENT_SECRET: client_secret
#      OIDC_AUTH_URL: https://auth.pdfding.com/.well-known/openid-configuration
    ports:
      - "8000:8000"

volumes:
  sqlite_data:
  media:

2. Run docker compose up to start the server.

3. Access PdfDing by navigating to http://127.0.0.1:8000.

Setting Up SSO with PdfDing

PdfDing supports Single Sign-On (SSO) via OIDC. To enable SSO, uncomment the OIDC-related variables in your docker-compose.yml file and configure your identity provider. Here’s an example configuration for Authelia:

oidc:
    ## The other portions of the mandatory OpenID Connect 1.0 configuration go here.
    ## See: https://www.authelia.com/c/oidc
    clients:
      - id: pdfding
            description: PdfDing
            # create client secret and hash with
            # docker run --rm authelia/authelia:latest authelia crypto rand --length 64 --charset alphanumeric
            secret: '$pbkdf2-sha512$310000$<rest_of_hashed_secret>'
            public: false
            authorization_policy: two_factor
            scopes:
              - openid
              - email
              - profile
            redirect_uris:
              - https://pdfding.com/accountoidc/login/callback/

Creating Admin Users

To grant admin privileges to a user, run the following command inside the PdfDing container:

python pdfding/manage.py make_admin -e [email protected]

Admin users can manage other users and perform advanced actions within the app.

PdfDing’s Future: Exciting Features on the Horizon

PdfDing is constantly evolving, with new features in the pipeline to enhance its functionality. Here’s what’s coming soon:

  • Shareable PDF Links: Generate links to share PDFs with others.
  • Password Protection and Expiry: Secure shared files with passwords and set expiration dates.
  • S3 Backup: Automatically back up your data to S3-compatible storage.

Got a feature idea? Share it on PdfDing’s GitHub page!

Final Thoughts on PdfDing

PdfDing is more than just a PDF viewer—it’s a powerful, self-hosted tool designed to streamline your PDF management. With its intuitive interface, customization options, and robust features, PdfDing is a must-have for anyone who regularly works with PDFs.

Ready to give it a try? Visit the PdfDing GitHub repository to get started.

Shared by Noted

You may also like

Subscribe
Notify of
guest

0 Comments
Newest
Oldest Most Voted
Inline Feedbacks
View all comments