Skip to content

Content Library

The Content Library provides a centralized repository for reusable content blocks in SPEAR. Teams can create, manage, and insert standardized content across multiple reports while maintaining version history and optional real-time synchronization.

The Content Library enables:

  • Centralized storage of reusable content blocks
  • Version history with rollback capabilities
  • Import/export for content portability
  • Usage tracking across reports
  • Linked content that auto-updates when source changes
  • Bulk operations for efficient management

Content blocks available across all reports regardless of service type:

  • Executive summary templates
  • Standard methodology descriptions
  • Compliance boilerplate
  • Legal disclaimers
  • Company introductions

Content specific to service types (e.g., Web Application Testing, Network Penetration):

  • Service-specific methodology sections
  • Standard scope definitions
  • Technology-specific findings templates
  • Remediation guidance by service area

Small, frequently-used text fragments:

  • Standard phrases
  • Severity definitions
  • Risk rating explanations
  • Technical terminology definitions
🖥️ Content Library Management Interface Screenshot

Every content block maintains a complete version history:

FieldDescription
Version NumberSequential version identifier
Created AtTimestamp of version creation
Created ByUser who made the change
ContentFull content at that version
Change NotesOptional description of changes

Content can be exported and imported as JSON for:

  • Backup and recovery
  • Sharing between SPEAR instances
  • Template distribution
  • Migration workflows

Export Format:

{
"version": "1.0",
"exportDate": "2024-01-15T10:30:00Z",
"content": [
{
"id": "abc123",
"title": "Executive Summary Template",
"type": "global",
"content": "<p>HTML content...</p>",
"tags": ["executive", "summary"],
"metadata": {}
}
]
}

Track where content blocks are used across reports:

  • Count of reports using each block
  • List of specific report references
  • Last used timestamp
  • Usage frequency metrics

Efficiently manage multiple content blocks:

OperationDescription
Bulk DuplicateCopy multiple blocks at once
Bulk ArchiveMove to archive state
Bulk RestoreRestore from archive
Bulk DeletePermanently remove multiple blocks
🖥️ Linked Content Blocks with Visual Indicators Screenshot

When content from the library is inserted into a report, it can be:

  1. Copied - Content is duplicated, no ongoing connection
  2. Linked - Content maintains connection to source

Linked content displays visual indicators and can auto-update when the source changes.

StateDescriptionVisual
LinkedConnected to source, auto-updatesChain icon
UnlinkedWas linked, now independentBroken chain
LockedLinked but protected from auto-updateLock icon

When source content changes:

  • Linked blocks update automatically
  • Locked blocks retain current content
  • Unlinked blocks are not affected

Users can manually unlink content to:

  • Make local modifications
  • Prevent unwanted updates
  • Create independent variations
🖥️ Content Library Button in Editor Toolbar Screenshot

The editor toolbar includes a Content Library button for inserting content.

  • Quick access from editor toolbar
  • Tabbed interface: Global | Service-specific
  • Search and filter functionality
  • Preview before insertion
  • Link or copy options
  1. Click Content Library button in toolbar
  2. Browse or search available content
  3. Preview selected content
  4. Choose “Insert Linked” or “Insert Copy”
  5. Content inserted at cursor position

Access via Reports > Content Library

Features:

  • Grid/list view toggle
  • Filter by type (global, service, snippet)
  • Search by title and tags
  • Sort by name, date, usage
  • Bulk selection and operations
  1. Click New Content
  2. Select content type
  3. Enter title and tags
  4. Edit content in rich text editor
  5. Save to create first version
  1. Select content block from list
  2. Click Edit
  3. Make changes in editor
  4. Optionally add change notes
  5. Save to create new version
🖥️ Version History Interface Screenshot
  1. Select content block
  2. Click History tab
  3. View list of versions with metadata
  4. Click version to preview
  5. Click Restore to revert

Content blocks support shortcodes for dynamic values:

<p>This report was prepared for {{client.name}}
on {{report.date}}.</p>
CategoryExamples
Client{{client.name}}, {{client.contact}}
Project{{project.name}}, {{project.dates}}
Report{{report.title}}, {{report.date}}
Organization{{org.name}}, {{org.address}}

Shortcodes are resolved:

  • During PDF export
  • In preview mode
  • When viewing in report context

Use consistent tagging:

  • Content type: template, boilerplate, snippet
  • Service area: webapp, network, physical
  • Section: executive, methodology, findings

Content should be:

  • Generic enough to apply across reports
  • Use shortcodes for variable data
  • Avoid report-specific references
  • Add change notes for significant updates
  • Review impact before updating linked content
  • Consider duplicating before major changes
  • Regularly review usage statistics
  • Archive unused content
  • Update frequently-used content carefully

Use Linking when:

  • Content should stay synchronized
  • Updates should propagate automatically
  • Consistency is critical

Use Copying when:

  • Content will be customized
  • Independence is preferred
  • Historical accuracy matters