Static Blog Generator Gulp

Static Blog Generator v3

Static Blog Generator v3 using Gulp System.

Pre-processing all source posts before rendering from hexo. Useful for low-end devices to avoid memory heap errors. With this package you can prevent using large number of hexo plugins, because some function (runner) separated by task, so memory friendly.

API documentation

Usages

  • copy source posts (gulp post:copy)
  • generate site (hexo generate)
  • anonymize link (gulp safelink) optional
  • fix seo (gulp seo) optional

References

Configuration

Configuration setup for _config.yml that required for this package (you can change the values)

public_dir: "public"
source_dir: "source"
post_dir: "src-posts"
generator:
# enable global cache
cache: true
# transform shortcodes result to amp html
amp: false

Copy source posts to hexo source dir

Compiling and Copying all source posts including shortcodes etc to hexo source post directory

Source Destination
./src-posts ./source/_posts
gulp post:copy

Anonymize External Links

Cloaking all external links to outbound page redirector, useful for SEO.

Source Destination
./.deploy_git ./.deploy_git
gulp safelink

Automatic SEO

  • adds an alt tag to an image element when none exists
  • adds an title tag to an iframe element when none exists
Source Destination
./.deploy_git ./.deploy_git
gulp seo

todo

  • CLI
command Description
sbg copy post process and copy post from src-posts to source/_posts
gulp --tasks list all tasks

Gulp Tasks

Gulp tasks of static-blog-generator
├── clean:post
├─┬ clean:all
│ └─┬ <series>
│   ├── clean:db
│   └── clean:archive
├── safelink
├── deploy:copy
├── deploy:push
├── deploy:status
├── deploy:commit
├── deploy:pull
├─┬ deploy
│ └─┬ <series>
│   ├── deploy:pull
│   ├── deploy:copy
│   ├── safelink
│   ├── deploy:commit
│   └── deploy:push
├── feed
├── seo
├── post:copy
├── post:standalone
├── project-commit
└── commitProject

Coverage

Coverage Here

CHANGELOG

all changelog at https://github.com/dimaslanjaka/static-blog-generator/commits/master