DocPad is a dynamic static site generator. Write your content as files, or import your content from other external sources. Render the content with plugins. And deploy your static or dynamic website to your favourite hosting provider.


Keywords
blog, build, build and deployment, builder, cli, cms, coffeescript, compile, compiler, content management system, dev, development, dms, document management system, esnext, framework, generator, language agnostic, node, parse, parser, render, renderer, scaffold, static site generator, templates, templating, tool, utility, web, web development, web framework, app, docpad, docpad-core, preprocessor, static-site-generator, template-engine
License
MIT
Install
npm install docpad@6.1.3

Documentation

DocPad. Streamlined web development.

Travis CI Build Status NPM version NPM downloads Dependency Status Dev Dependency Status
GitHub Sponsors donate button Patreon donate button Flattr donate button Liberapay donate button Buy Me A Coffee donate button Open Collective donate button crypto donate button PayPal donate button Wishlist browse button

Hi! I'm DocPad, I streamline the web development process and help close the gap between experts and beginners. I've been used in production by big and small companies for over a year and a half now to create plenty of amazing and powerful web sites and applications quicker than ever before. What makes me different is instead of being a box to cram yourself into and hold you back, I'm a freeway to what you want to accomplish, just getting out of your way and allowing you to create stuff quicker than ever before without limits. Leave the redundant stuff up to me, so you can focus on the awesome stuff.

Discover my features below, or skip ahead to the installation instructions to get started with a fully functional pre-made website in a few minutes from reading this.

Watch the Screencast!

Features

Out of the box

  • Completely file based, meaning there are no pesky databases that need to be installed, and for version control you get to use systems like Git and SVN, which you're already used to (You can still hook in remote data sources if you want, DocPad doesn't impose any limits on you, ever)
  • Choose from plenty of community maintained pre-made websites to use for your next project instead of starting from scratch every time
  • Write your documents in any language, markup, templating engine, or pre-processor you wish (we're truly agnostic thanks to your plugin system). You can even mix and match them when needed by combining their extensions in a rails-like fashion (e.g. coffee-with-some-eco.js.coffee.eco)
  • Changes to your website are automatically recompiled through our built-in watch system
  • Add metadata to the top of your files to be used by templating engines to display non-standard information such as titles and descriptions for your documents
  • Display custom listings of content with our powerful Query Engine available to your templating engines
  • Abstract out generic headers and footers into layouts using our nested layout system
  • For simple static websites easily deploy your generated website to any web server like apache or github pages. For dynamic projects deploy them to servers like heroku to take advantage of custom routing with express.js. Deploy guide here
  • Built-in server to save you from having to startup your own, for dynamic deployments this even supports things like clean urls, custom routes and server-side logic
  • Robust architecture and powerful plugin system means that you are never boxed in. Unlike traditional CMS systems, you can always extend DocPad to do whatever you need it to do, and you can even write to bundle common custom functionality and distribute them through the amazing node package manager npm
  • Built-in support for dynamic documents (e.g. search pages, signup forms, etc), so you can code pages that change on each request by just adding dynamic: true to your document's meta data (exposes the express.js req and res objects to your templating engine)
  • You can use it standalone, or even easily include it within your existing systems with our API

With our amazing community maintained plugins

  • Use the Live Reload plugin to automatically refresh your web browser whenever a change is made, this is amazing
  • Pull in remote RSS/Atom/JSON feeds into your templating engines allowing you to display your latest twitter updates or github projects easily and effortlessly using the Feedr Plugin
  • Support for every templating engine and pre-processor under the sun, including (but not limited to) CoffeeScript, CoffeeKup, ECO, HAML, Handlebars, Jade, Less, Markdown, PHP, Ruby, SASS and Stylus - the full listing is here
  • Use the Partials Plugin to abstract common pieces of code into their own individual file that can be included as much as you want
  • Syntax highlight code blocks automatically with either our Highlight.js Plugin or Pygments Plugin
  • Get SEO friendly clean URLs with our Clean URLs Plugin (dynamic deployments only)
  • Lint your code automatically with our Ling Plugins: jshint and coffeelint
  • Concatenate and minify your JavaScript and CSS assets making page loads faster for your users with our Minify Plugins: htmlmin and grunt
  • Install common javascript libraries like jQuery, Backbone and Underscore directly from the command line - (under construction, coming soon)
  • Automatically translate your entire website into other languages with our Translation Plugin - under construction, coming soon
  • Add an admin interface to your website allowing you to edit, save and preview your changes on live websites then push them back to your source repository with the Admin Plugins
  • Pretty much if DocPad doesn't already do something, it is trivial to write a plugin to do it. DocPad can accomplish anything; it never holds you back, and there are no limits.
  • Many other plugins not listed here that are still definitely worth checking out! :)

People love DocPad

All sorts of people love DocPad, from first time web developers to even industry leaders and experts. In fact, people even migrate to DocPad from other systems as they love it so much. Here are some our favourite tweets of what people are saying about DocPad :)

Some favourite tweets about DocPad

Install

Click here for our latest Install Instructions.

Quick Start

Click here to skip ahead to our latest Quick Start Guide.

What next?

Here are some quick links to help you get started:

History

Discover the release history by heading on over to the HISTORY.md file.

Contribute

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

Backers

Maintainers

These amazing people are maintaining this project:

Sponsors

These amazing people have contributed finances to this project:

Become a sponsor!

GitHub Sponsors donate button Patreon donate button Flattr donate button Liberapay donate button Buy Me A Coffee donate button Open Collective donate button crypto donate button PayPal donate button Wishlist browse button

Contributors

These amazing people have contributed code to this project:

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

Participants

Also thanks to all the countless others who have continued to raise DocPad even higher by submitting plugins, issues reports, discussion topics, IRC chat messages, and praise on twitter. We love you.

License

Unless stated otherwise all works are:

and licensed under: