GBGS Book Club Character Visualizer

Ever finish a book and forget who everyone was? These interactive maps help.

Interactive network visualizations of character relationships across different stories. Select a book below to explore character connections, track relationships through chapters, and visualize the narrative structure. Play with it. Adjust it to suit. Save your changes, load your changes.

Available Visualizations

How to Use the Visualizer

- Creating a Network

The easiest way to create a book template is ask you favorite AI to populate the schema (json) documented below. Then take creative control of the layout. You can drag and drop characters, double-clicking to release them, or use 'recenter' to start over.

Saving:

Capture the diagram and save your edited JSON when ready.

Visibility & Structure:

Use 0 in the chapter array to make nodes/links part of the master layout (Chapter 0 is the title).

Time-Based Mapping Advanced (Under Development):

For evolving relationships, assign specific chapter numbers instead of 0. Nodes and links will only appear when their chapter data matches. Removing 0 makes them disappear entirely."

- Viewing the Network

- Editing Node

Add Node

Click Add Node button or press a to create a new node with ID, name, group, optional notes and chapter appearances.

Edit Node

Click Edit Mode or press e, then click any node to modify their properties.

Delete Node

Click Delete Mode or press d, then click a node to remove them (and all their relationships).

- Managing Relationships

- Chapter Management

- File Operations

- Visual Controls

- Keyboard Shortcuts

a Add Node: Character, Place, Theme r Add Relationship c Add Chapter e Toggle Edit Mode d Toggle Delete Mode g Optional Manage groups ← → Previous/Next Chapter Ctrl+S Save File Esc Close Modals / Exit Modes

- Tips

- File Format

For portability, efficiency and future feature compatibility the visualizer uses JSON files with this structure: Many of the diagrams were created by first populating this file with AI then manually positioning the nodes to a users liking. Chapter 0 is the Book title and may have main characters associated with it. (Those on the illustrated cover for example). This allows characters and relationships to evolve through chapters by having both characters and links vary by chapter. The View button allow seeing all nodes either at once or by chapter. Leave a comment using the feedback button.


{
  "nodes": [
    {
      "id": "Alice",
      "title": "Alice Cooper", 
      "group": 0,
      "notes": "Godfather of shock rock",
      "chapters": [0,1,2]
    },
    {
      "id": "Bob",
      "title": "Bob Ezrin", 
      "group": 1,
      "notes": "Sent to get Rid of Alice Cooper.",
      "chapters": [0,1,2]
    }
  ],
  "links": [
    {
      "source": "Alice",
      "target": "Bob",
      "relationship": "Singer",
      "bondlevel": 5,
      "linkchapters": [0]
    },
    {
      "source": "Alice",
      "target": "Bob",
      "relationship": "Producer",
      "bondlevel": 5,
      "linkchapters": [0]
    }
  ],
  "chapters": [
    {
      "number": 0,
      "title": "Beginning"
    }
  ],
  "groups": [
    {
      "number": 0,
      "name": "Performer",
      "description": "Concert and Recording Artist"
    },
    {
      "number": 1,
      "name": "Manager",
      "description": "Producer"
    }
  ]
}

AI generation JSON Instructions

Generate a JSON graph dataset for the book using the schema below. Save the file as YourBookName.json. If the output is generated in another file format, rename it with a .json extension. If the resulting graph appears too sparse, ask the AI to generate additional nodes and relationships to create a richer, more connected dataset.

RULES

Nodes represent characters, creatures, places, organizations, or important concepts.

Links represent relationships between nodes.

Chapters use indexed numbering: Chapter numbers must be sequential graph indexes. Do not use original printed chapter numbers.

Remap source chapters into continuous numbering beginning at 1.

User Feedback

V0.80 D. Fedyk 2026

Inspired by reading books for a book club and forgetting the character names!

AI assistance programming provided by Claude by Anthropic

Changes Conversion to chapter Array for Nodes and Links. Forwards compatible change.

Changes Better text fit for Elipses Better for large books better for printing. Forwards compatible change.

Credit to d3js for the original idea.