# Construction

> The construction preset installs punch lists and RFIs as work items, sites in assets, daily logs as forms, drawings with revisions, comments and submittal approvals.

Source: https://bettersupabase.com/docs/presets/construction

The `construction` preset is for an app in the style of Procore. A project
team keeps the drawings and their revisions, discusses them, raises punch
list items and requests for information (RFIs), files a daily log from site,
and routes submittals for approval.

## Config [#config]

```ts title="better-supabase.config.ts"
import { defineConfig } from "better-supabase/config";

export default defineConfig({ preset: "construction" });
```

`npx better-supabase init --preset construction` starts a new project from
it, and `npx better-supabase apply --preset construction` adds it to one you
have ([CLI](/docs/cli/presets)).

## Blocks [#blocks]

The preset is [`saas`](/docs/presets#named-presets) plus these blocks, and
whatever they require:

| Block                                   | Role in the app                                            |
| --------------------------------------- | ---------------------------------------------------------- |
| [work-items](/docs/blocks/work-items)   | Punch list items and RFIs, with a due date and an assignee |
| [assets](/docs/blocks/assets)           | Sites, buildings, floors and rooms                         |
| [forms](/docs/blocks/forms)             | Daily logs and inspection checklists                       |
| [attachments](/docs/blocks/attachments) | Drawings, photos and submittal files                       |
| [versions](/docs/blocks/versions)       | Drawing revisions                                          |
| [comments](/docs/blocks/comments)       | Discussion on a drawing, an RFI or a punch list item       |
| [approvals](/docs/blocks/approvals)     | Submittal review by the architect and engineer             |

## How the blocks connect [#how-the-blocks-connect]

A drawing is an attachment on a site or a room in `assets`, and each
revision is a frozen version, so every earlier revision stays readable. An RFI is a work item with its own
pipeline, and a submittal is an approval request on the submitted files,
decided by the architect and the engineer in turn. A daily log is a form
submission linked to the site.

## With ReUI [#with-reui]

- Data Grid for punch list items and RFIs, with Filters on location and status.
- A drawing viewer that places comment pins on their anchors.
- Stepper for the daily log form.