# Plan and run a project

> Create a project, add its tasks and what each waits for, and let the scheduler time it.

You give each task a duration and what it waits for. Continual's scheduler sets every date and
forecasts when the project finishes. Projects and tasks are records in the
[Projects app](/docs/apps/projects).

## Plan the project

<Tabs>
  <Tab title="Ask Continual">
    <Steps>
      <Step title="Describe the work">
        In your thread, say what the project is and when it is due, such as
        "Plan the Q1 website relaunch for the Marketing team, due March 31:
        copy, design, build, then launch."
      </Step>
      <Step title="Check the plan">
        Continual creates the project, its tasks, and what each waits for. Open
        the project beside the thread, and ask for changes, such as "Design
        takes 10 days, not 5."
      </Step>
    </Steps>
  </Tab>
  <Tab title="In the app">
    <Steps>
      <Step title="Create the project">
        Choose **Records** in the sidebar, then **Projects › Projects**. Choose
        **New project**. Give it a **Title**, an **Owner**, and a **Due date**.
        The project is yours alone until you share it.
      </Step>
      <Step title="Add its tasks">
        On the project's page, under **Tasks**, choose **New task**. For each,
        set a **Title**, an **Owner**, a **Kind**, and a **Duration** in working
        days.
      </Step>
      <Step title="Say what each task waits for">
        Open a task. Under **Waits for**, choose **New dependency**, then choose
        the task it waits for and the **Type**, such as **Finish to start**. Add
        a **Lag** in working days if it needs one.
      </Step>
    </Steps>
  </Tab>
</Tabs>

<TryAsking
  prompts={[
    "Plan Cedar Valley Clinics' implementation: kickoff, data import, training, and go-live by Dec 12.",
    "What is left on SOC 2 Type II readiness, and who owns it?",
    "Mark ENG-5 done.",
  ]}
/>

A task's **Kind** is **Work**, which takes its owner's time; **Wait**, time that passes while nobody
works, such as a review; or **Milestone**, a date with no duration. A task's owner can be a person
or Continual.

## Read the schedule

The scheduler works Monday to Friday. From each task's duration and what it waits for, it sets:

- Each task's **Scheduled start** and **Scheduled finish**, its **Slack** in working days, and
  whether it is **Critical**, meaning any slip moves the finish.
- The project's **Forecast finish**, and **Late** when it cannot finish by its due date.

On **Projects › Tasks**, the **Critical path** view lists the unfinished critical tasks in order,
and the **Schedule** view shows them on a timeline. Set **Start no earlier than** on a task that
cannot start before a fixed day, such as a delivery.

## Do the work

Open a task beside your thread and choose **Start** when work begins, then **Done** when it is
finished, or press <Kbd>⌘</Kbd> <Kbd>⇧</Kbd> <Kbd>↵</Kbd>. On the task's own page, set its
**Status** instead. A started task keeps the day it started as its scheduled start.

When you connect GitHub, Projects syncs the repositories you can read, with their issues and pull
requests. See
[Connect Gmail and GitHub](/docs/guides/connect-your-accounts).

## Next steps

<Cards>
  <Card title="Projects" href="/docs/apps/projects" icon="folder">
    Projects, tasks, and dependencies.
  </Card>
  <Card
    title="Connect Gmail and GitHub"
    href="/docs/guides/connect-your-accounts"
    icon="plug"
  >
    Sync your repositories and mailbox.
  </Card>
</Cards>
