# Getting started

**Note:** *this feature is experimental* - users of JavaScript should expect things to break or lack complete functionality. If testing experimental software is your jam, you can use JavaScript experimentally in the app and report any bugs you find [on our GitHub](https://github.com/quadratichq/quadratic/issues) or by [reaching out to us directly](https://www.quadratichq.com/contact).&#x20;

With JavaScript in Quadratic, the world's most popular programming language meets the world's most popular tool for working with data - spreadsheets.&#x20;

## Quick start

1. Select a cell where you want to write JavaScript.

<figure><img src="https://2438361843-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ff1Y5UzPF2x1oIzVJbUK8%2Fuploads%2FJSNrLKoAeHGFOPuTvw5N%2FCleanShot%202024-12-03%20at%2010.13.17%402x.png?alt=media&#x26;token=d5970c74-b51f-47f9-ad50-1ad9ee653932" alt=""><figcaption></figcaption></figure>

2. Press `/` to bring up the cell type menu. Select JavaScript.

<figure><img src="https://2438361843-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ff1Y5UzPF2x1oIzVJbUK8%2Fuploads%2Fb8t81vjlrxwihKFh4AtS%2FCleanShot%202024-12-03%20at%2010.13.53%402x.png?alt=media&#x26;token=56a7dfc9-ca66-4561-8150-4912b633888a" alt=""><figcaption></figcaption></figure>

3. Write JavaScript in the code editor. Return statements are returned to the sheet at the cell position.

<figure><img src="https://2438361843-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ff1Y5UzPF2x1oIzVJbUK8%2Fuploads%2FIBW6Kmy6JOx5UTxim7EU%2FCleanShot%202024-12-03%20at%2012.23.50%402x.png?alt=media&#x26;token=db548605-c5ae-442f-a6e5-68e2874dbd2f" alt=""><figcaption></figcaption></figure>

## Learn more

Below are a bunch of quick links to find more details on how to write JavaScript in Quadratic.

<table data-view="cards"><thead><tr><th></th><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td></td><td>Learn how to: <br><span data-gb-custom-inline data-tag="emoji" data-code="1f9f9">🧹</span> <strong>Reference cells using JavaScript</strong></td><td></td><td><a href="../formulas/reference-cells">reference-cells</a></td></tr><tr><td></td><td>Learn how to: <br><span data-gb-custom-inline data-tag="emoji" data-code="1f449">👉</span> <strong>Return data to the sheet using JavaScript</strong></td><td></td><td><a href="return-data-to-the-sheet">return-data-to-the-sheet</a></td></tr><tr><td></td><td>Learn how to: <br><span data-gb-custom-inline data-tag="emoji" data-code="1f4c8">📈</span> <strong>Make API requests using JavaScript</strong></td><td></td><td><a href="api-requests">api-requests</a></td></tr><tr><td></td><td>Learn how to: <br><span data-gb-custom-inline data-tag="emoji" data-code="1f916">🤖</span> <strong>Make API requests using JavaScript</strong></td><td></td><td><a href="api-requests">api-requests</a></td></tr><tr><td></td><td>Learn how to: <br><span data-gb-custom-inline data-tag="emoji" data-code="1f4ca">📊</span> <strong>Visualize data using JavaScript</strong></td><td></td><td><a href="charts-visualizations">charts-visualizations</a></td></tr><tr><td></td><td>Learn how to: <br><span data-gb-custom-inline data-tag="emoji" data-code="1f468-1f4bb">👨‍💻</span> <strong>Import JavaScript packages using ESM</strong></td><td></td><td><a href="packages">packages</a></td></tr></tbody></table>


---

# 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.quadratichq.com/javascript/getting-started.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.
