## Classes
Blog
## Members
HTMLGenerator

Generates the blog index page

RSSGenerator

Generates an RSS feed XML file

StaticGenerator

Generates the static assets required for the blog

TXTGenerator

Generates a TXT version of the blog

## Blog **Kind**: global class * [Blog](#Blog) * [new Blog(config)](#new_Blog_new) * [.add(postLocation)](#Blog+add) ⇒ Promise.<undefined> * [.update(postLocation)](#Blog+update) ⇒ Promise.<undefined> * [.publish()](#Blog+publish) ⇒ Promise.<undefined> * [.publishArchive()](#Blog+publishArchive) ⇒ Promise.<undefined> * [.addRemote()](#Blog+addRemote) ⇒ Promise.<undefined> * [.removeRemote()](#Blog+removeRemote) ⇒ Promise.<undefined> * [.syncDown()](#Blog+syncDown) ⇒ Promise.<undefined> * [.syncUp()](#Blog+syncUp) ⇒ Promise.<undefined> ### new Blog(config) The Blog class is the blog generator, it's in charge of adding and updating posts, and handling the publishing. | Param | Type | Description | | --- | --- | --- | | config | Blog.tConfiguration | the initialization options to extend the instance | ### blog.add(postLocation) ⇒ Promise.<undefined> Shifts the blog posts, adds the passed file to slot 0, and generates files. **Kind**: instance method of [Blog](#Blog) **Returns**: Promise.<undefined> - empty promise, returns no value | Param | Type | Description | | --- | --- | --- | | postLocation | string | the path to the blog post file | ### blog.update(postLocation) ⇒ Promise.<undefined> Update slot 0 with the passed gmi file, and generates files. **Kind**: instance method of [Blog](#Blog) **Returns**: Promise.<undefined> - empty promise, returns no value | Param | Type | Description | | --- | --- | --- | | postLocation | string | the path to the blog post file | ### blog.publish() ⇒ Promise.<undefined> Publishes the files to a static host. **Kind**: instance method of [Blog](#Blog) **Returns**: Promise.<undefined> - empty promise, returns no value ### blog.publishArchive() ⇒ Promise.<undefined> Publishes the archive to a host using rsync. Currently assumes gemlog archive. **Kind**: instance method of [Blog](#Blog) **Returns**: Promise.<undefined> - empty promise, returns no value ### blog.addRemote() ⇒ Promise.<undefined> Adds a remote **Kind**: instance method of [Blog](#Blog) **Returns**: Promise.<undefined> - empty promise, returns no value ### blog.removeRemote() ⇒ Promise.<undefined> Removes a remote **Kind**: instance method of [Blog](#Blog) **Returns**: Promise.<undefined> - empty promise, returns no value ### blog.syncDown() ⇒ Promise.<undefined> Pulls the posts and archive from the remote **Kind**: instance method of [Blog](#Blog) **Returns**: Promise.<undefined> - empty promise, returns no value ### blog.syncUp() ⇒ Promise.<undefined> Pushes the posts and archive to the remote **Kind**: instance method of [Blog](#Blog) **Returns**: Promise.<undefined> - empty promise, returns no value ## HTMLGenerator Generates the blog index page **Kind**: global variable | Param | Type | Description | | --- | --- | --- | | source | string | the source directory | | target | string | the target directory | | posts | Array.<Blog.tPost> | the list of posts | ## RSSGenerator Generates an RSS feed XML file **Kind**: global variable | Param | Type | Description | | --- | --- | --- | | source | string | the source directory | | target | string | the target directory | | posts | Array.<Blog.tPost> | the list of posts | ## StaticGenerator Generates the static assets required for the blog **Kind**: global variable | Param | Type | Description | | --- | --- | --- | | source | string | the source directory | | target | string | the target directory | | posts | Array.<Blog.tPost> | the list of posts | ## TXTGenerator Generates a TXT version of the blog **Kind**: global variable | Param | Type | Description | | --- | --- | --- | | source | string | the source directory | | target | string | the target directory | | posts | Array.<Blog.tPost> | the list of posts |