Skip to main content
drupalreleases

Use direct release data with your AI assistant.

Learn more

Viewer

Security covered Under active development 85 sites

The Viewer module imports and processes various file types like CSV, XLSX, and PDF, displaying them within Drupal using a reference field or a block. It offers integrations with charting libraries and data tables, allowing for organized data presentation in tabs or accordions, with options for manual or automated imports from different sources.

What is the Viewer module?

The Viewer module is a simple and yet powerful module to import and process structured or unstructured file types such as CSV, XLSX/XLS, PDF and present them in Drupal via Viewer reference field or a Block. The module comes with multiple plugin support for various data. Some of the plugins include integration with Chart.js, ApexCharts, Datatables and many more. You may easily organize your data and display each file in a tab (horizontal or vertical), accordions and other options could be also added.

The module can import files from different locations it could be FTP, SFTP, absolute path, remote URL or manual upload. Automated imports on cron are also supported.
In some cases those imports are very important and require some kind of notification when import fails, just enable Slack or Email notifications and get notified.

Each plugin comes with intuitive user interface for settings, configuration and filters when available. Module supports plugin previews.

The module could be useful to show financial information, analytical data or any other files on your site.

Whats New

  • In the latest version I added support for CKEditor 5 and text format filter so you can embed any Viewer right into your content.

Key Features

This module does not import file structure into Drupal entities but rather works with file itself and display data on the fly (cached).

  • Import CSV, XLSX and other file types manually or automatically from different locations (FTP, SFTP, HTTP or system path).
  • Override column header with ability to preprocess cell data and hide/show options.
  • Group different data into Tabs and Accordions (can be extended).
  • Email or Slack notifications on import success/failure.
  • Multiple Viewer plugins (Chart.js ApexCharts, Datatabels, Fullcalendar).
  • View CSV, XLSX (in v 2.x phpoffice/phpspreadsheet needs to be installed via composer) and PDF files and and reference to the viewer via fields or CKEditor 5 (embed).

Use Cases

The following are some use cases and can be extended via module's plugin system.

  • Display analytical and statistical data (charts, tables).
  • Display financial data (stocks etc).
  • Supply text with visuals from CSV for research data.
  • Display events list CSV as a calendar via Fullcalendar viewer.

Roadmap

  • Documentation.
  • Adding new tool for mapping CSV columns with Drupal entity fields for imports.
  • Extending Viewer plugins (data sources and display plugins).
  • Examples submodule (populates with test data)
  • Better integration for decoupled projects

Examples

Example creating new viewer using Datatables plugin:

Datatables settings form:

Datatables configuration form:

Datatables preview:

Filtering options:

Charts example:

CKEditor 5 example:

Supporting the Project

Please consider supporting this project with a donation.

Drupal 9–11

Ask your assistant about Viewer

Check compatibility with your Drupal and PHP version, maintenance and security coverage, from current release data. How it works

Depends on

Dependencies of the latest stable release

  • rest Drupal core

Required by

Tracked projects that depend on this one

No tracked projects depend on this one yet.

Activity

Tracked releases
11
Tracked since
Mar 2023
Latest release
10 months ago
Releases (12 mo)
1 ▲ from 0
Maintenance
Slowing

Release Timeline

Releases

Version Type Core PHP Release date
2.0.0-rc2 Pre-release 10–11 Dec 8, 2025
1.0.x-dev Dev 9–11 Jul 31, 2024
1.0.5 Stable 9–11 Jul 31, 2024
1.0.4 Stable 9–11 Mar 25, 2024
1.0.3 Stable 9–11 Mar 23, 2024
1.0.2 Stable 9–10 Feb 27, 2024
1.0.1 Stable 9–10 Aug 3, 2023
1.0.1-beta2 Pre-release 9–10 May 5, 2023
1.0.1-beta1 Pre-release 9–10 Apr 25, 2023
1.0.1-alpha6 Pre-release 9–10 Mar 14, 2023