About Thumber

Origin

Thumber was inspired by Document Gallery, a WordPress plugin designed to support the rendering of a wide range of filetypes in a gallery format that is easy for users to explore and quickly find what they are looking for without the need to download the document before viewing its contents. The plugin functions by gracefully degrading based on the capabilities of the server where it is installed. The inherent problem with this design is that the plugin has a hard limit on functionality based on what the target server can support. As the plugin developers began looking to expand file support, it became clear that the status quo was inadequate for the kind of reliable experience we wanted to deliver. Thus, Thumber was born.

Purpose

Thumber serves as a plug-and-play solution for supporting 82 filetypes without any dependency on the server where image representations of these files are needed. All that is required is that the server be able to send outgoing HTTP requests and receive incoming HTTP requests. With these two requirements met, images can be generated for a wide range of filetypes, including PDFs; Microsoft Office files from Word, PowerPoint, Excel, Publisher, and Visio; audio files with embedded images; video files; and much, much more. As Thumber grows, the plan is to continually grow our supported filetypes based on what you, our users, report as most important to your use cases.

Interoperability

In addition to providing the service itself, we also have made a concerted effort to be sure you have to write little to no code in order to integrate your software with Thumber. If you're planning just to use Document Gallery, support is already fully-integrated. You don't have to do anything except setup your credentials. If you're doing something outside of WordPress, we're still here for you! We're in the process of developing snippets of code that demonstrate using our API in a number of different languages, including PHP, Java, and C. The code samples are open source and free to use in any application you like with no restrictions (including redistribution) under the Apache 2.0 license.

Finally, if you're using some other language for which we do not have sample code available yet, our REST protocol is very straightforward and can be implemented in any modern language with little effort. The primary dependencies are support for sending and receiving HTTP transactions and being able to compute SHA256 checksums. A good JSON library is helpful, but not strictly required as you can roll your own if necessary.

Filetypes

The currently-supported filetypes are listed below. If you have a business critical format that is not currently listed, contact us and we'll investigate whether support can be added.

  • 1

    PDF

    application/pdf

  • 1

    Postscript

    application/postscript

  • 2

    EPS

    application/eps, image/eps

  • 1

    CSV

    text/csv

  • 1

    TSV

    text/tab-separated-values

  • 2

    Microsoft Word

    application/msword, application/vnd.openxmlformats-officedocument.wordprocessingml.document

  • 2

    Microsoft Excel

    application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet

  • 2

    Microsoft PowerPoint

    application/vnd.ms-powerpoint, application/vnd.openxmlformats-officedocument.presentationml.presentation

  • 1

    Microsoft Publisher

    application/mspublisher

  • 1

    Microsoft Visio

    application/visio

  • 1

    OpenDocument Text

    application/vnd.oasis.opendocument.text

  • 1

    OpenDocument Drawing

    application/vnd.oasis.opendocument.graphics

  • 1

    OpenDocument Presentation

    application/vnd.oasis.opendocument.presentation

  • 1

    OpenDocument Spreadsheet

    application/vnd.oasis.opendocument.spreadsheet

  • 1

    OpenDocument Chart

    application/vnd.oasis.opendocument.chart

  • 1

    OpenDocument Image

    application/vnd.oasis.opendocument.image

  • 1

    OpenOffice.org XML Text

    application/vnd.sun.xml.writer

  • 1

    OpenOffice.org XML Spreadsheet

    application/vnd.sun.xml.calc

  • 1

    OpenOffice.org XML Graphics

    application/vnd.sun.xml.draw

  • 1

    OpenOffice.org XML Presentation

    application/vnd.sun.xml.impress

  • 1

    GIF

    image/gif

  • 2

    TIFF

    image/tiff, image/tif

  • 2

    Favicon

    image/vnd.microsoft.icon, image/icon

  • 1

    XCF

    image/xcf

  • 1

    WebP

    image/webp

  • 5

    Photoshop

    image/vnd.adobe.photoshop, application/photoshop, application/psd, image/photoshop, image/psd

  • 6

    Bitmap

    image/bmp, image/ms-bmp, image/win-bitmap, image/windows-bmp, image/bitmap, image/xbitmap

  • 3

    JPEG

    image/jpeg, image/jpg, image/pjpg

  • 1

    JPEG 2000

    image/jp2

  • 2

    SVG

    image/svg+xml, image/svg-xml

  • 1

    PNG

    image/png

  • 1

    HTML

    text/html

  • 1

    Audio OGG

    audio/ogg

  • 2

    MPEG

    audio/mpeg, video/mpeg

  • 2

    MP3

    audio/mpeg3, audio/mp3

  • 1

    Microsoft Windows Media Audio

    audio/ms-wma

  • 1

    Material eXchange Format

    application/mxf

  • 1

    Shockwave

    application/shockwave-flash

  • 1

    3GPP

    video/3gpp

  • 3

    Flash Video

    video/f4v, video/flv, video/x-flv

  • 1

    Flash Video

    application/f4v

  • 2

    MPEG-4

    video/mp4, application/mp4

  • 2

    Video OGG

    video/ogg, application/ogg

  • 2

    RealVideo

    video/vnd.rn-realvideo, application/vnd.rn-realmedia

  • 1

    DivX

    video/divx

  • 1

    QuickTime

    video/quicktime

  • 1

    WebM

    video/webm

  • 1

    H261

    video/h261

  • 1

    H263

    video/h263

  • 1

    Matroska Video

    video/matroska

  • 2

    Motion JPEG

    video/motion-jpeg, video/mjpeg

  • 1

    Microsoft Advanced Systems Format

    video/ms-asf

  • 1

    Windows Media Video

    video/ms-wmv

  • 2

    AVI

    video/avi, video/msvideo

  • 1

    Graphviz

    text/vnd.graphviz