use serde::{Deserialize, Serialize}; /// #[derive(Deserialize, Serialize)] pub struct Legend { /// A link to the adventurer's profile (e.g., personal website, GitHub, /// etc.). pub profile: String, /// A URL or path to an image representing the adventurer (e.g., avatar or /// portrait). pub image: String, /// A short descriptive text or tagline about the adventurer. pub blurb: String } /// Represents an author or contributor of a tale. /// /// An `Adventurer` contains identifying and descriptive information /// such as their name, handle, profile URL, image, and a short blurb. #[derive(Deserialize, Serialize)] pub struct Adventurer { /// The full name of the adventurer. pub name: String, /// A unique handle or username for the adventurer (e.g., used in URLs or /// mentions). pub handle: String, /// #[serde(flatten)] pub legend: Legend } impl Adventurer {}