External Paths Demo

This header block was loaded from ../shared/ — outside the site directory.

What This Example Demonstrates

This example shows how allow-external-paths enables reading content from outside the site directory, which can replace traditional plugin systems.

🌍 External Relative Paths

Path: ../shared/

Content from outside site directory using relative paths with allow-external-paths option.

📝 Local Content

Path: local-content/

Standard local includes for comparison.

⚙️ External Configuration

Build mode: production

Features: external-paths,symlinks

TOML data from external sources that CI/CD could manage.

🔧 External Build Info (with Fallback)

Build: local-dev

Commit: development

External source with fallback to local defaults - perfect for CI/CD workflows.

Plugin System Alternative

Instead of implementing a plugin system, external paths allow:

Security Model

External paths require dual-flag security:

  1. Config flag: options = ["allow-external-paths"] in the step
  2. CLI flag: --allow-external-paths when running SSI

Both must be present. This prevents accidental external path access.

Deployment Command

ssi --allow-external-paths deploy site/ output/

Content Sources

Use Cases