blot

blot.read(context, content_types)

Stage 1 of site generation.

For each defined content type:
  • use loader to discover input content
  • use reader to parse input content into content assets
  • run each processor against the assets
  • return resulting context dictionary containing everything
blot.write(context, writers, build_path='output')

Stage 2 of site generation.

For each specified writer:
  • Resolve each asset’s target output location on disk
For each specified writer:
For each asset fed to the writer:
  • Render the asset using the global context
  • Write the asset to disk

The reason for targetting all assets before rendering is so that during rendering the URLS for all assets are available. This allows any templates being used to render a specific content type to include links to other assets of other content types.