#project #storytellersuite

11 results
NameDescriptionType
01-Project-StructureComplete directory structure and file organization for Storyteller Suite pluginreference
02-Core-Plugin-ArchitectureMain plugin class, TypeScript interfaces, settings system, and data persistence patternscore
03-Entity-ManagementImplementation details for all entity types including Character, Location, Event, Scene, Chapter, Item, Group, and Referencecore
04-Modals-SystemModal dialog patterns, ResponsiveModal base class, entity modals, suggest modals, and UI component examplesui
05-Timeline-SystemTimeline visualization system including event timeline, Gantt chart view, dependencies, filtering, and date parsingfeature
06-Map-SystemInteractive map system using Leaflet.js for image-based and real-world maps with entity markers and hierarchyfeature
07-Template-SystemTemplate system for creating reusable entity configurations, full world templates, and variable substitutionfeature
08-Import-ExportDocument import system with parsers for multiple formats and manuscript compilation/export with customizable workflowsfeature
09-InternationalizationMulti-language support system with JSON locale files, t() function, and translation guidelinesreference
10-Build-And-TestingDevelopment workflow including npm scripts, esbuild configuration, Vitest testing, ESLint, and GitHub Actions release workflowbuild
Storytellersuite-Project-OverviewHigh-level overview of the Storyteller Suite plugin as implemented in the current GitHub codebaseoverview

Storyteller Suite - Project Overview

Info

Verified against Maws7140/obsidian-storyteller-suite on 2026-03-30.
Latest version in manifest.json and package.json: 1.7.4.
Latest repo commit observed: 2026-03-29 (f863aa7), which is maintenance-only contributor normalization.
Most recent feature release I could verify from the repo history: 1.7.4 on 2026-03-15.

What Is This?

Storyteller Suite is an Obsidian plugin for story planning, worldbuilding, timeline management, manuscript workflows, maps, and campaign/session play. Its core data model stays vault-native by storing entities as Markdown notes with YAML frontmatter instead of opaque database records.

Recent Update Snapshot

Key Information

Field Value
Plugin ID storyteller-suite
Current Version 1.7.4
Min Obsidian Version 1.0.12
Desktop Only false
Author Maws
License MIT
Node Engine >=18.18.0 <23
Repository Maws7140/obsidian-storyteller-suite

Current Feature Areas

Story and Worldbuilding Entities

Interactive Views

Campaign / Session Play

Compile, Templates, and Import

Data / Note Integration

Architecture Highlights

  1. Plugin entry: src/main.ts is the main plugin entry point and view/command registration hub.
  2. Settings: src/StorytellerSuiteSettingTab.ts manages the large settings surface.
  3. Views: src/views/ currently contains DashboardView, AnalyticsDashboardView, CampaignView, TimelineView, MapView, NetworkGraphView, SceneGraphView, and WritingPanelView.
  4. Compile subsystem: src/compile/ contains CompileEngine, SceneOrderManager, WordCountTracker, and workflow steps.
  5. Services: src/services/EntitySyncService.ts and src/services/LocationService.ts handle shared data logic.
  6. Templates: src/templates/ contains storage, conversion, validation, and application logic.
  7. YAML handling: src/yaml/EntitySections.ts centralizes section/frontmatter rules.
  8. Tutorial + onboarding: src/tutorial/ supports built-in guide/update content.
  9. Localization: src/i18n/locales/ currently ships en, de, es, fr, and zh.

Data Model

Storyteller Suite stores story data as Markdown files with YAML frontmatter.

---
name: Character Name
description: Brief description
tags:
  - protagonist
  - warrior
customFields:
  weapon: Sword
  allegiance: Kingdom
---

## Description
Full description goes here...

## Backstory
Character history...

By default, multi-story mode uses folders like:

Technology Stack

Technology Purpose
TypeScript Primary language
Obsidian API Plugin platform
esbuild Bundling/build pipeline
Vitest Unit/integration testing
Playwright AI/browser-driven test flows
WebdriverIO E2E test automation
Leaflet Map rendering
Cytoscape.js Relationship/network graph rendering
vis-timeline Timeline and Gantt visualization
chrono-node Natural-language date parsing
js-yaml Frontmatter parsing/serialization
luxon Date/time handling

Development Workflow

# Install dependencies
npm install

# Development build
npm run dev

# Production build
npm run build

# Unit/integration tests
npm run test

# E2E tests
npm run test:e2e

# Playwright AI-focused tests
npm run test:ai

GitHub Actions currently verifies type-check + build in CI, while the repo also includes local test commands for broader coverage.

Key Directories

src/
|- main.ts
|- StorytellerSuiteSettingTab.ts
|- commands/
|- compile/
|- components/
|- i18n/
|- import/
|- leaflet/
|- modals/
|- services/
|- templates/
|- tutorial/
|- views/
|- yaml/
`- utils/