# Pre-placed components

### Overview

Quilter treats all components within the board boundary at upload as "pre-placed."&#x20;

**As a core principal rule, Quilter doesn't change the position or orientation of pre-placed components.**&#x20;

When compiling, Quilter will place and route components that were left outside the board outline.

{% hint style="success" %}
**Overhanging Components**\
Quilter can handle pre-placed components with overhanging design elements or component outlines, such as an ESP32 module with a PCB trace antenna positioned off the edge of the circuit board.
{% endhint %}

### Why should I pre-place components?

There are a few reasons to pre-place components:

1. **Location-sensitive components**\
   One main reason to pre-place a component is to make sure that location-sensitive parts, such as mechanical pieces and connectors, end up in the right spot. <br>
2. **Unsupported physics constraints**\
   If Quilter doesn't currently support a physics constraint that demands precise or highly organized placement of components, you can manually position individual components or groups to ensure they're placed correctly. <br>
3. **"Saving your progress"**\
   When working with Quilter, you might find that you like certain elements of a layout candidate, but not the overall design. Once you've downloaded a candidate, you can choose to keep the routing and placements you like, remove the rest, and resubmit to Quilter to save your progress towards a fabrication-ready design.

### How to specify

#### As a preference

Components inside the board outline are locked and can't be moved or rotated by Quilter during compilation. We won't change pre-placed components, even if they stop Quilter from finishing a layout job successfully.&#x20;

If you wish to constrain component placement to pre-specified sides or areas within your board outline, see [placement-regions](https://docs.quilter.ai/design-parameters/placement-regions "mention").

#### As a requirement

Locking the position and rotation of a component is easy: just pre-place it within the board outline and upload your input file to Quilter.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.quilter.ai/design-parameters/pre-placed-components.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
