> ## Documentation Index
> Fetch the complete documentation index at: https://hubify.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# hubify site

> Manage your public lab site, publish, preview, and configure your research presence.

# hubify site

Manage the public-facing lab site. Every lab gets a site at `{slug}.hubify.app` that showcases your research, papers, figures, and activity. The site auto-deploys when you push changes.

## hubify site publish

Publish or update the lab site.

<CodeGroup>
  ```bash Publish the site theme={null}
  hubify site publish
  ```

  ```bash Publish with a message theme={null}
  hubify site publish --message "Added SPHEREx forecast results"
  ```

  ```bash Publish only specific pages theme={null}
  hubify site publish --pages "index,papers,activity"
  ```
</CodeGroup>

```
Publishing to https://bigbounce.hubify.app...
  Syncing index.html... updated
  Syncing papers.html... updated
  Syncing activity.html... updated
  Syncing figures.html... no changes
  Syncing data-explorer.html... no changes

Published 3 pages. Live at https://bigbounce.hubify.app
```

**Options:**

| Flag               | Description                                     | Default        |
| ------------------ | ----------------------------------------------- | -------------- |
| `--message <text>` | Publish message (shown in activity log)         | Auto-generated |
| `--pages <pages>`  | Comma-separated page names to publish           | All pages      |
| `--force`          | Publish even if no changes detected             | `false`        |
| `--dry-run`        | Show what would be published without publishing | `false`        |

## hubify site preview

Launch a local preview of the lab site.

<CodeGroup>
  ```bash Preview locally theme={null}
  hubify site preview
  ```

  ```bash Preview on a specific port theme={null}
  hubify site preview --port 8080
  ```

  ```bash Preview a specific page theme={null}
  hubify site preview --page papers
  ```
</CodeGroup>

```
Starting preview server...
Lab site preview: http://localhost:3000

Watching for changes. Press Ctrl+C to stop.
```

**Options:**

| Flag            | Description                    | Default |
| --------------- | ------------------------------ | ------- |
| `--port <port>` | Local server port              | `3000`  |
| `--page <page>` | Open a specific page on launch | `index` |
| `--open`        | Open the browser automatically | `true`  |

## hubify site config

View and update site configuration.

<CodeGroup>
  ```bash View current config theme={null}
  hubify site config
  ```

  ```bash Set custom domain theme={null}
  hubify site config --domain "research.example.com"
  ```

  ```bash Update site title theme={null}
  hubify site config --title "Big Bounce Research Lab"
  ```

  ```bash Set site description theme={null}
  hubify site config --description "Spin-torsion cosmology and bounce model constraints"
  ```

  ```bash Toggle visibility theme={null}
  hubify site config --visibility public
  ```
</CodeGroup>

```
Site Configuration:
  URL:          https://bigbounce.hubify.app
  Custom domain: none
  Title:        Big Bounce Research Lab
  Description:  Spin-torsion cosmology and bounce model constraints
  Visibility:   public
  Auto-deploy:  on push to main
  Pages:        12
```

**Options:**

| Flag                   | Description                          | Default                |
| ---------------------- | ------------------------------------ | ---------------------- |
| `--domain <domain>`    | Custom domain (CNAME setup required) | `{slug}.hubify.app`    |
| `--title <title>`      | Site title                           | Lab name               |
| `--description <text>` | Site meta description                | Lab description        |
| `--visibility <vis>`   | `public` or `private`                | Lab visibility         |
| `--favicon <path>`     | Custom favicon path                  | Default Hubify favicon |
| `--og-image <path>`    | Open Graph image for social sharing  | Auto-generated         |

## hubify site pages

List all pages on the site.

```bash theme={null}
hubify site pages
```

```
PAGE              PATH               LAST UPDATED      SIZE
Homepage          index.html         2026-04-14 10:00  48 KB
Papers            papers.html        2026-04-13 15:30  32 KB
Explainer         explainer.html     2026-04-12 09:00  28 KB
Data Explorer     data-explorer.html 2026-04-14 10:00  156 KB
Figures           figures.html       2026-04-13 12:00  18 KB
Glossary          glossary.html      2026-04-11 14:00  22 KB
Articles          articles.html      2026-04-10 16:00  12 KB
Activity          activity.html      2026-04-14 14:00  35 KB
Timeline          timeline.html      2026-04-09 11:00  20 KB
Visualize         visualize.html     2026-04-08 17:00  45 KB
Dossier           dossier/index.html 2026-04-13 18:00  64 KB
Datasets          datasets.html      2026-04-07 10:00  15 KB
```

## hubify site sync

Sync the site with the current state of the research. Updates all pages that reference changed experiments, papers, or data.

<CodeGroup>
  ```bash Auto-sync all pages theme={null}
  hubify site sync
  ```

  ```bash Sync with preview (don't publish yet) theme={null}
  hubify site sync --preview
  ```

  ```bash Sync and publish immediately theme={null}
  hubify site sync --publish
  ```
</CodeGroup>

```
Scanning for changes since last sync...
  EXP-054 completed → updating index.html, activity.html, data-explorer.html
  PAPER-001 version bump → updating papers.html
  New figure: posterior_plot.png → updating figures.html

Synced 5 pages. Run `hubify site publish` to deploy.
```

**Options:**

| Flag        | Description                      | Default |
| ----------- | -------------------------------- | ------- |
| `--preview` | Stage changes without publishing | `false` |
| `--publish` | Auto-publish after sync          | `false` |

## Typical Workflow

```bash theme={null}
# 1. After completing experiments, sync the site
hubify site sync

# 2. Preview locally before publishing
hubify site preview

# 3. Publish to production
hubify site publish --message "Updated with SPHEREx forecast results"

# 4. Set up a custom domain
hubify site config --domain "bounce.mylab.edu"

# 5. Check page status
hubify site pages
```
