0.2.7 • Public • Published

    grunt-assemble-sitemap NPM version NPM monthly downloads NPM total downloads Linux Build Status Windows Build Status

    Sitemap plugin for Assemble

    Table of Contents


    Install with npm:

    $ npm install --save grunt-assemble-sitemap


    Register the plugin in your assemble config:

    assemble: {
      options: {
        plugins: ['grunt-assemble-sitemap', 'other/plugins/*']

    Visit the plugins docs for more info or for help getting started.


    See for detail XML tag definitions.


    Type: String

    Default: undefined

    Sitemap destination. If not set, fallback to assemble destination.


    Type: String

    Default: homepage (from package.json)

    Site URL


    Type: String

    Default: weekly

    How frequently the page is likely to change. This value provides general information to search engines and may not correlate exactly to how often they crawl the page. Valid values are:

    • always
    • hourly
    • daily
    • weekly
    • monthly
    • yearly
    • never


    Type: Float

    Default: 0.5

    The priority of this URL relative to other URLs on your site. Valid values range from 0.0 to 1.0. This value does not affect how your pages are compared to pages on other sites—it only lets the search engines know which pages you deem most important for the crawlers.


    Type: Array

    Default: ['404']

    Pages to omit from the sitemap.

    options: {
      sitemap: {
        exclude: ["foo", "bar"],
      files: {


    Type: String / Boolean

    Default: false

    Path to which the URLs in Sitemap and Robots should be relative to. true is equal to the destination path dest and false is equal to the root directory.


    Type: String Default: sitemap.xml

    If you have a master sitemap that references sub-sitemaps, use this feature. For example static-sitemap.xml


    Type: Boolean

    Default: true

    Generate robots.txt from exclusions list.


    Type: Boolean Default: false

    When generating a sitemap with directory indexes, use pretty urls by removing index path segments from to to create


    To simplify might do something like:

    assemble: {
      blog: {
        options: {
          plugins: ['grunt-assemble-sitemap'],
        files: {
          './blog/': ['./templates/blog/*.hbs']




    assemble: {
      blog: {
        options: {
          plugins: ['grunt-assemble-sitemap'],
          sitemap: {
            homepage: '',
                changefreq: 'daily',
                priority: '0.8',
                exclude: ['50x', 'foo'],
                robot: false
        files: {
          './blog/': ['./templates/blog/*.hbs']




    Related projects


    Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.


    Commits Contributor
    64 hariadi
    11 doowb
    7 rauberdaniel
    7 hgoebl
    2 jonschlinkert
    1 quartzmo
    1 jarrodconnolly
    1 Melindrea
    1 olegsmetanin

    Release history

    2017-03-16 v0.2.6

    • Add option.basename to specify the basename of the output file. Defaults to sitemap.xml.
    • Add option.pretty to remove index.html from paths.
    • Repo code clean up.

    2014-05-31 v0.2.5

    • fix sitemap and robots not generated
    • relativedest can be a path now

    2014-05-31 v0.2.4

    • added sitemap URL to robots.txt
    • added relativedest to options

    2014-05-02 v0.2.3

    • fixes toc
    • Change docs to use verb

    2014-03-25 v0.2.2

    • Change from plugin to middleware

    2014-02-20 v0.2.1

    • fix option.robot was ignored and always true 0159123
    • (feat) add option.dest and use as output path
    • fix option.robot was ignored and always true
    • (feat) add option to overwrite changefreq per file
    • cosmetical changes (code formatting, naming, simplify)
    • (wip) enable globbing patterns for option.exclude

    2014-02-04 v0.2.0

    • Generation of robots.txt will now respect the relativedest option.

    2014-02-01 v0.1.9

    • Fix sitemap destination

    2014-01-27 v0.1.8

    • Use external library
    • Get pages from assemble object

    2014-01-02 v0.1.7

    • Add relativedest option

    2013-12-11 v0.1.6

    • Fix plugin name in Usage Examples
    • Update deps

    2013-11-27 v0.1.4

    • Updates dependencies to work with Grunt 0.4.2
    • [object Object]
    • Add TOC to docs

    2013-10-19 v0.1.3

    • Fix sitemap and robots.txt generated on every folder
    • Update docs options:exclusions

    2013-10-17 v0.1.2

    • Fix homepage

    2013-10-16 v0.1.1

    • Add option to generate robots.txt
    • Change name to assemble-contrib.sitemap
    • Move to Assemble main repo

    2013-09-30 v0.1.0

    • First commmit.
    • Add option to exclude

    Building docs

    (This project's is generated by verb, please don't edit the readme directly. Any changes to the readme must be made in the readme template.)

    To generate the readme, run the following command:

    $ npm install -g verbose/verb#dev verb-generate-readme && verb

    Running tests

    Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command:

    $ npm install && npm test


    Hariadi Hinta


    Copyright © 2017, Hariadi Hinta. Released under the MIT License.

    This file was generated by verb-generate-readme, v0.4.3, on March 17, 2017.


    npm i grunt-assemble-sitemap

    DownloadsWeekly Downloads






    Last publish


    • jonschlinkert
    • hariadi
    • doowb