Skip to content
Queria Docs
English
Esc
↑↓navigate↵open⌘Jpreview
On this page

Create pages

Write a page with SQL and charts in the browser, choose who can see it, and share it

A page is an article that combines text, SQL, charts and maps. It uses the same format as the Showcase articles. Each page opens at queria.io/pages/<handle>/<url>.

You need to log in to create pages.

Create a page

  1. Open the “Pages” tab of your account page (queria.io/accounts/<handle>/pages)
  2. Click “New page”
  3. Choose a URL, write the content and click “Save”

Saving opens the page. Use “Edit” at the top right to make changes.

Pages for an organization account are created the same way from that organization’s “Pages” tab. Members of the organization can create them.

The URL uses lowercase letters, digits and hyphens. The URL can’t be changed later.

Writing the content

Write the content in Markdown. The front matter at the top holds the title, summary and the datasets the page uses. Write SQL in code blocks.

---
title: Population by prefecture
description: Lists the population of each prefecture
publishedAt: 2026-10-23
author:
  name: Taro Yamada
tags: [population]
datasets:
  - queria/e_stat as e_stat
---

## The most populous prefectures

```sql
SELECT ...
FROM e_stat.<schema>.<table>
```
  • For how to write charts, see Draw charts and maps
  • SQL can only reference datasets listed under datasets. Write each as <handle>/<dataset> as <alias> and use the alias in SQL
  • The page can’t be saved if a listed dataset isn’t used in SQL, or if SQL uses a dataset that isn’t listed
  • The page’s author is shown as the account that owns the page, not the author in the front matter. The published and updated dates also come from when the page was actually published and saved, not from the front matter

Add a map

A gis code block shows the population, households and age mix of the people living inside a circle around a point, together with land prices and facilities, on a map. Readers can click the map to move the point and recount on the spot. “Open in trade area analysis” opens the same point in trade area analysis, and “Open this analysis in SQL” opens the SQL behind the numbers.

```gis
type: around
lng: 139.393896
lat: 35.679414
radius: 1000
caption: 1km around Hino Station
```
  • The content is YAML with only type (just around for now), lng / lat (longitude and latitude, numbers within Japan), radius (whole metres, 100–3000) and an optional caption. Any other key stops the page from saving
  • Only circles are supported. Walking, cycling and driving ranges cannot be written in pages yet
  • Population is counted by splitting each census town block (chome) by the share of its area inside the circle
  • The datasets the map uses do not need to be listed in datasets
  • The map counts in the reader’s browser each time the page opens. Its numbers are not saved like chart results
  • The map computes in the browser, so many maps on one page make it slow to open

Emoji and search settings

Set these with “Emoji” and “Show in search engines” in the editor, or write them in the front matter. Both do the same thing.

emoji: "🏫"     # The page's emoji. Defaults to 📊
search: false   # Keep the page out of search engines. Defaults to showing it
  • The emoji appears on the card image shown when the page is shared on social media, and in the list of other pages by the same author at the end of a page. Write exactly one emoji
  • Only public pages appear in search engines. With search: false, a public page stays out of search results (anyone with the URL can still open it)

Where the SQL runs

A page’s SQL runs in the reader’s browser, in a DuckDB isolated on a separate site from queria.io (sql.queriausercontent.com). It can only see the datasets listed under datasets. It can’t reach files the reader uploaded or URLs on other sites.

Each block can hold a single SELECT statement (one trailing ; is fine). Several statements separated by semicolons are an error. When you need an intermediate result, use WITH, or write it in a sql id=<name> block and refer to it as <name> from other blocks. To show SQL that can’t run, put it in a sql run=false block: it is displayed as code and not run.

Visibility

Visibility Who can see it
Private Only you
Members only Members of the organization that owns the page (organizations on a paid plan only)
Public Anyone (no login needed)

Members only is an organization feature: it can be chosen only for pages of organization accounts with an organization plan. If the plan ends, pages that are already members-only stay as they are.

New pages start as private. Save and check how the page looks, then change the visibility to “Public” to share it.

A public page can only use public datasets.

Chart results

When you save, your browser runs the page’s SQL and stores the chart results with the page. While the save button shows “Computing chart results…”, wait a moment, or choose “Open without waiting” to open the page right away.

Readers see the stored results immediately, with “Results from the author’s run” and the date under each chart. “Open in playground” opens that chart’s SQL in a new tab, where readers can rerun it on the current data or edit it. If the data has been updated since, the numbers may differ from when the page was written.

Readers can also filter, sort and pivot a table with the Filter, Sort and Pivot buttons above it. Using them loads the data in the reader’s browser and applies the conditions to the whole table (the page itself doesn’t change). Removing all conditions returns to the author’s results.

Pages that use private datasets don’t store results. Their charts are computed in each reader’s browser every time.

Limits

  • Pages can’t include images yet
  • A page can use up to 20 datasets, and the content can be up to 200KB
  • An account can hold up to 500 pages

Create pages from the CLI or AI

Turn a Markdown file into a page with queria page create report.md, or from an AI assistant with the MCP tool create_page. See the CLI reference and the MCP tools reference.

Delete a page

Click “Delete” in the editor. A deleted page can’t be restored, but you can create a new page at the same URL.

Was this page helpful?