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

# The six built-in roles

> Admin, Project Manager, Superintendent, Safety Manager, Foreman and Viewer — who to assign to whom, in one pass.

export const Video = ({id, title, runtime, url}) => {
  const meta = VIDEOS[id] || ({});
  const label = title || meta.title || "Tutorial video";
  const length = runtime || meta.runtime || "";
  const track = meta.track || "";
  const src = toEmbedUrl(url || meta.url);
  const frame = {
    position: "relative",
    width: "100%",
    paddingTop: "56.25%",
    borderRadius: "10px",
    overflow: "hidden",
    background: "rgba(127,127,127,0.09)",
    border: src ? "1px solid rgba(127,127,127,0.24)" : "1px dashed rgba(127,127,127,0.42)"
  };
  const fill = {
    position: "absolute",
    inset: 0,
    width: "100%",
    height: "100%",
    border: 0
  };
  const center = {
    position: "absolute",
    inset: 0,
    display: "flex",
    flexDirection: "column",
    alignItems: "center",
    justifyContent: "center",
    gap: "10px",
    padding: "24px",
    textAlign: "center"
  };
  const idBadge = {
    fontFamily: "ui-monospace, SFMono-Regular, Menlo, monospace",
    fontSize: "12px",
    letterSpacing: "0.06em",
    padding: "2px 8px",
    borderRadius: "4px",
    background: "rgba(184,82,40,0.14)",
    color: "#B85228",
    fontWeight: 600
  };
  const caption = {
    display: "flex",
    flexWrap: "wrap",
    alignItems: "center",
    gap: "8px",
    marginTop: "8px",
    fontSize: "13px",
    opacity: 0.66,
    fontFamily: "ui-monospace, SFMono-Regular, Menlo, monospace"
  };
  return <div style={{
    margin: "0 0 28px"
  }}>
      <div style={frame}>
        {src ? <iframe style={fill} src={src} title={label} frameBorder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; fullscreen; picture-in-picture" allowFullScreen /> : <div style={center}>
            <svg width="44" height="44" viewBox="0 0 44 44" fill="none" aria-hidden="true">
              <circle cx="22" cy="22" r="20" stroke="currentColor" strokeOpacity="0.28" strokeWidth="2" />
              <path d="M18 15.5L29 22L18 28.5V15.5Z" fill="currentColor" fillOpacity="0.32" />
            </svg>
            <div style={{
    fontWeight: 600,
    fontSize: "15px",
    maxWidth: "36ch",
    lineHeight: 1.35
  }}>{label}</div>
            <div style={{
    fontSize: "13px",
    opacity: 0.6
  }}>
              Video coming soon{length ? " · " + length : ""}
            </div>
          </div>}
      </div>
      <div style={caption}>
        {id ? <span style={idBadge}>{id}</span> : null}
        {length ? <span>{length}</span> : null}
        {track ? <span>{track} track</span> : null}
      </div>
    </div>;
};

<Video id="80.4" />

<Note>
  **For admins.** Six roles ship with DirtView. Most companies never need more than these.
</Note>

## The six

<CardGroup cols={2}>
  <Card title="Admin" icon="crown">
    Runs DirtView for your company: people, roles, settings, integrations.

    **Give it to:** the one or two people who own the system. Not everyone senior.
  </Card>

  <Card title="Project Manager" icon="user-tie">
    Runs jobs: RFIs, submittals, change orders, approvals.

    **Give it to:** your PMs and project engineers.
  </Card>

  <Card title="Superintendent" icon="helmet-safety">
    Runs the field: drawings, daily logs, tickets, coordination.

    **Give it to:** supers and general foremen.
  </Card>

  <Card title="Safety Manager" icon="kit-medical">
    Safety forms, inspections, certifications and compliance.

    **Give it to:** whoever owns safety, even part-time.
  </Card>

  <Card title="Foreman" icon="hard-hat">
    Day-to-day field work: fill out forms, write tickets, look at sheets.

    **Give it to:** working foremen and leads.
  </Card>

  <Card title="Viewer" icon="eye">
    Read-only. Sees, changes nothing.

    **Give it to:** anyone who needs visibility without responsibility — an owner's rep, your CFO.
  </Card>
</CardGroup>

## Assigning them without overthinking it

<Steps>
  <Step title="Start at the lowest role that does the job">
    It's easy to raise someone later. Pulling a permission back after they've had it is a conversation.
  </Step>

  <Step title="Keep Admin to two people">
    One is a single point of failure. Four is nobody owning it.
  </Step>

  <Step title="Use Viewer generously">
    Most "can you send me a copy" requests are a Viewer seat.
  </Step>

  <Step title="Remember: role is the ceiling, job membership is the door">
    A PM who isn't on the job still can't see it. → [Putting people on a project](/projects/add-people-to-a-project)
  </Step>
</Steps>

<Note>
  The built-in roles are **editable**, and you can build your own starting from one of them. → [Custom roles and the Permission Matrix](/people/custom-roles)
</Note>

## Next

<CardGroup cols={2}>
  <Card title="Custom roles" icon="table-list" href="/people/custom-roles">
    Read the matrix before you save.
  </Card>

  <Card title="Field-level permissions" icon="lock" href="/forms/field-settings">
    Hide a rate column from one role.
  </Card>
</CardGroup>
