Remove Scenes, group beats by multiple characters; strip comments repo-wide
Drop the Scene entity/grouping in favor of chapters carrying prose directly and beats belonging to many characters. Add markdown editor + character multi-select components to the web client. Remove all XML doc and inline comments across the touched C#/TS/CSS files in favor of self-documenting names, and record that convention in CLAUDE.md. Add .mcp.json (local MCP server config, no secrets) and ignore .idea/.
This commit is contained in:
@@ -1,12 +1,9 @@
|
||||
using Novelly.Api.Beats;
|
||||
using Novelly.Api.Projects;
|
||||
using Novelly.Api.Tags;
|
||||
|
||||
namespace Novelly.Api.Characters;
|
||||
|
||||
/// <summary>
|
||||
/// A character dossier. Every field beyond <see cref="Name"/> is optional so a writer can
|
||||
/// start with a name and fill the sheet in as the character comes into focus.
|
||||
/// </summary>
|
||||
public class Character
|
||||
{
|
||||
public Guid Id { get; set; } = Guid.NewGuid();
|
||||
@@ -16,10 +13,6 @@ public class Character
|
||||
public string Name { get; set; } = string.Empty;
|
||||
public CharacterRole Role { get; set; } = CharacterRole.Supporting;
|
||||
|
||||
/// <summary>
|
||||
/// Whether this character carries the book or supports it. New characters start as
|
||||
/// supporting — a writer promotes the few who turn out to be main.
|
||||
/// </summary>
|
||||
public CharacterImportance Importance { get; set; } = CharacterImportance.Supporting;
|
||||
|
||||
public string? Age { get; set; }
|
||||
@@ -30,22 +23,15 @@ public class Character
|
||||
public string? Personality { get; set; }
|
||||
public string? Backstory { get; set; }
|
||||
|
||||
/// <summary>What the character consciously wants.</summary>
|
||||
public string? Want { get; set; }
|
||||
|
||||
/// <summary>What the character actually needs — usually at odds with <see cref="Want"/>.</summary>
|
||||
public string? Need { get; set; }
|
||||
|
||||
public string? InternalConflict { get; set; }
|
||||
public string? ExternalConflict { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// How the character changes over the course of the book, in a sentence or two.
|
||||
/// <see cref="ArcStages"/> breaks the same change into ordered steps.
|
||||
/// </summary>
|
||||
public string? ArcSummary { get; set; }
|
||||
|
||||
/// <summary>Speech patterns, verbal tics, register — anything that makes dialogue sound like them.</summary>
|
||||
public string? Voice { get; set; }
|
||||
|
||||
public string? Notes { get; set; }
|
||||
@@ -56,11 +42,11 @@ public class Character
|
||||
public List<CharacterRelationship> Relationships { get; set; } = [];
|
||||
public List<Tag> Tags { get; set; } = [];
|
||||
|
||||
/// <summary>The character's arc, in order. Kept mainly for main characters.</summary>
|
||||
public List<CharacterArcStage> ArcStages { get; set; } = [];
|
||||
|
||||
public List<Beat> Beats { get; set; } = [];
|
||||
}
|
||||
|
||||
/// <summary>A directed relationship from one character to another.</summary>
|
||||
public class CharacterRelationship
|
||||
{
|
||||
public Guid Id { get; set; } = Guid.NewGuid();
|
||||
@@ -71,7 +57,6 @@ public class CharacterRelationship
|
||||
public Guid RelatedCharacterId { get; set; }
|
||||
public Character? RelatedCharacter { get; set; }
|
||||
|
||||
/// <summary>e.g. "sister", "rival", "former mentor".</summary>
|
||||
public string RelationshipType { get; set; } = string.Empty;
|
||||
|
||||
public string? Description { get; set; }
|
||||
|
||||
Reference in New Issue
Block a user