> ## Documentation Index
> Fetch the complete documentation index at: https://docs.getkato.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Shape your workspace data

> A practical guide to organizing the things your team tracks.

export const LessonList = ({lessons, Image, label = "Learning path"}) => <ol className="kato-lessons" aria-label={label}>
    {lessons.map((lesson, index) => <li className="kato-lesson" key={lesson.href}>
        <a className="kato-lesson-link" href={lesson.href}>
          <span className="kato-lesson-number" aria-hidden="true">{index + 1}</span>
          <div className="kato-lesson-copy">
            <h2>{lesson.title}</h2>
            <p>{lesson.description}</p>
            <span className="kato-lesson-cta">Read guide <span aria-hidden="true">→</span></span>
          </div>
          <Image kind={lesson.kind} src={lesson.src} alt={lesson.alt || ""} thumbnail />
        </a>
      </li>)}
  </ol>;

export const DocImage = ({src, alt, caption, kind = "workspace", thumbnail = false, natural = false}) => {
  const paths = {
    objects: "m12 3 9 4.5v9L12 21l-9-4.5v-9L12 3Z M3 7.5l9 4.5 9-4.5 M12 12v9",
    attributes: "M4 5h16 M4 12h16 M4 19h16 M8 3v4 M16 10v4 M10 17v4",
    records: "M5 3h14v18H5z M8 7h8 M8 11h8 M8 15h5",
    relationships: "M8 8H4v8h4 M16 8h4v8h-4 M8 12h8 M10 10l-2 2 2 2 M14 10l2 2-2 2",
    views: "M3 4h18v16H3z M3 9h18 M9 9v11 M15 9v11",
    importing: "M12 3v12 M8 11l4 4 4-4 M4 16v5h16v-5",
    workspace: "M4 4h16v16H4z M4 9h16 M9 9v11",
    navigation: "m5 5 14 5-6 3-3 6-5-14Z",
    team: "M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2 M16 4a4 4 0 0 1 0 8 M22 21v-2a4 4 0 0 0-3-3.87 M13 7a4 4 0 1 1-8 0 4 4 0 0 1 8 0Z",
    tasks: "M9 6h11 M9 12h11 M9 18h11 M3 6l1 1 2-2 M3 12l1 1 2-2 M3 18l1 1 2-2",
    meetings: "M4 5h16v15H4z M4 10h16 M8 3v4 M16 3v4 M8 14h3 M8 17h6",
    ai: "m12 3 2.5 6.5L21 12l-6.5 2.5L12 21l-2.5-6.5L3 12l6.5-2.5L12 3Z",
    automation: "M9 3h6v6H9z M3 16h6v5H3z M15 16h6v5h-6z M12 9v4 M6 16v-3h12v3"
  };
  return <figure className={["kato-visual", thumbnail ? "kato-visual--thumbnail" : ""].filter(Boolean).join(" ")}>
    {src ? <div className={["kato-visual-frame", natural ? "kato-visual-frame--natural" : ""].filter(Boolean).join(" ")}>
        {thumbnail ? <img src={src} alt={alt || ""} loading="lazy" decoding="async" /> : <a className="kato-visual-fullsize" href={src} target="_blank" rel="noreferrer" aria-label={`Open full-size image: ${alt || caption || "Kato guide"}`}>
            <img src={src} alt={alt || ""} loading="lazy" decoding="async" />
          </a>}
      </div> : <div className="kato-visual-frame kato-placeholder" role={thumbnail ? undefined : "img"} aria-label={thumbnail ? undefined : `Image placeholder: ${alt || caption || "Kato workspace"}`} aria-hidden={thumbnail ? "true" : undefined}>
        <span className="kato-orbit kato-orbit--outer" />
        <span className="kato-orbit kato-orbit--inner" />
        <span className="kato-visual-icon"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="1.4" strokeLinecap="round" strokeLinejoin="round" aria-hidden="true"><path d={paths[kind] || paths.workspace} /></svg></span>
        {!thumbnail && <span className="kato-placeholder-label">Image placeholder</span>}
      </div>}
    {caption && !thumbnail && <figcaption>{caption}{src && <span className="kato-visual-hint">Select the image to view it full size.</span>}</figcaption>}
  </figure>;
};

Start with the information your team needs, then give it a structure that makes
sense. These guides use a client-and-project workflow to explain the essentials.

<LessonList
  Image={DocImage}
  label="Workspace data guides"
  lessons={[
{ title: "How your data fits together", description: "See the role of objects, attributes, records, and views.", href: "/documentation/data/how-data-connects", kind: "objects", src: "/images/data/data-structure.webp", alt: "Isometric layers showing a collection, its records and attributes, and a connected view." },
{ title: "Choose what to track", description: "Give each kind of item a shared structure.", href: "/documentation/data/objects", kind: "objects", src: "/images/data/objects.webp", alt: "Three isometric trays grouping company, person, and project cards into separate objects." },
{ title: "Design useful attributes", description: "Capture the details your team needs to work with.", href: "/documentation/data/attributes", kind: "attributes", src: "/images/data/attributes.webp", alt: "Text, date, and status fields lifted above an isometric table of attributes." },
{ title: "Work with records", description: "Keep the information for one item in one place.", href: "/documentation/data/records", kind: "records", src: "/images/data/records.webp", alt: "An isometric company record with attribute rows, a connected note, and a task." },
{ title: "Connect related records", description: "Make the connections between your work explicit.", href: "/documentation/data/relationships", kind: "relationships", src: "/images/data/relationships.webp", alt: "A client record linked to two project records, with one project connected to a task." },
{ title: "Create focused views", description: "Find the right perspective on the same records.", href: "/documentation/data/views", kind: "views", src: "/images/data/views.webp", alt: "The same collection of records displayed as an isometric table, board, and calendar." }
]}
/>


## Related topics

- [Search the workspace](/api-reference/raycast/search.md)
- [Use Ask Kato](/documentation/use-ask-kato.md)
- [Bring your data into Kato](/documentation/importing-data.md)
- [List Raycast objects](/api-reference/raycast/objects.md)
- [How your data fits together](/documentation/data/how-data-connects.md)
