Skip to content
Imports Tumblr data into your DocPad Database
CoffeeScript HTML
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.


Type Name Latest commit message Commit time
Failed to load latest commit information.

Tumblr Importer Plugin for DocPad

Build Status NPM version Dependency Status Development Dependency Status
Gittip donate button Flattr donate button PayPal donate button BitCoin donate button Wishlist browse button

Import your Tumblr content directly into your DocPad database


docpad install tumblr


Specifying your Blog

You need to specify TUMBLR_BLOG (e.g. and your TUMBLR_KEY in either your .env configuration file like so:

Or via your docpad configuration file via:

		blog: ''
		apiKey: '123'

You can create a new Tumblr API KEY here or find your exiting ones here. Your API KEY is the same as your OAuth Consumer Key.

Customising the Output

The default directory for where the imported documents will go inside is the tumblr directory. You can customise this using the relativeDirPath plugin configuration option.

The default extension for imported documents is .json. You can customise this with the extension plugin configuration option.

The default content for the imported documents is the serialised tumblr data as JSON data. You can can customise this with the injectDocumentHelper plugin configuration option which is a function that takes in a single Document Model.

If you would like to render a partial for the tumblr data type, add a layout, and change the extension, you can this with the following plugin configuration:

extension: ''
injectDocumentHelper: (document) ->
		layout: 'default'
		tags: (document.get('tags') or []).concat(['post'])
		data: """
			<%- @partial('post/'+@document.tumblr.type, @extend({}, @document, @document.tumblr)) %>

You can find a great example of this customisation within the syte skeleton which combines the tumblr plugin with the partials plugin as well as the tags plugin and paged plugin.

Creating a File Listing

As imported documents are just like normal documents, you can also list them just as you would other documents. Here is an example of a file that would output the titles and links to all the imported tumblr documents:

<ul><% for file in @getFilesAtPath('tumblr/').toJSON(): %>
		<a href="<%= file.url %>"><%= file.title %></a>
<% end %></ul>


Discover the change history by heading on over to the file.


Discover how you can contribute by heading on over to the file.



These amazing people are maintaining this project:


No sponsors yet! Will you be the first?

Gittip donate button Flattr donate button PayPal donate button BitCoin donate button Wishlist browse button


These amazing people have contributed code to this project:

Become a contributor!


Licensed under the incredibly permissive MIT license

Copyright © Bevry Pty Ltd (

You can’t perform that action at this time.