---
title: "Project configuration"
description: "Order Lab configuration hub for buyers and integrators — public vars, secrets, wiki, playbook, and supported services."
locale: "en"
---
# Project configuration

> **Info**
> Use **Founder** / **Developer** tabs in the docs sidebar to filter this page. Configuration for a paid clone order lives on the Order Lab desk — not only in local `.env`.

After a calculator **project order** is paid, buyers and integrators configure the clone from the Order Lab desk (example admin desk: [`/admin/crm/orders/…?tab=secrets`](https://ring-platform.org/admin/crm/orders/po_1785404272368_e8dca92b?tab=secrets)). Brand overlay fields use **`?tab=project`**. Runtime env uses **`?tab=secrets`** (buyer) and **`?tab=env`** (integrator ops).

| Tab | Who | What |
|-----|-----|------|
| **project** | Buyer + integrator | Allowlisted `projectConfig` (name, slogan, logo) → brand mirrors on deploy |
| **secrets** | Buyer (owner) | `owner_private` + `public_shared` keys from `env.local.template` |
| **env** | Integrator / admin | Ops keys (`integrator_ops`) — DB, Auth.js secret, PSP, etc. |
| **wiki** | Buyer + integrator | Project NODUS / Admin Wiki space |
| **playbook** | Buyer + integrator | Ringization steps for this order |

### For founders

## Operator map

  
- **[Public vars](/docs/configuration/public-vars.md)** — Browser-safe `NEXT_PUBLIC_*` values you can set on Secrets — including WalletConnect.

  
- **[Secrets](/docs/configuration/secrets.md)** — Private keys (Firebase, SMTP, RingBase token) — encrypted at rest; applied on next deploy.

  
- **[WalletConnect Project ID](/docs/configuration/walletconnect.md)** — Get a free Reown Cloud ID and paste it into Secrets for mobile QR wallets.

  
- **[Supported services](/docs/configuration/supported-services.md)** — Catalog of third-party accounts you may need (Firebase, Reown, Filebase, Google OAuth, PSP).

  
- **[NODUS wiki](/docs/configuration/nodus-wiki.md)** — Keep brand and deploy decisions in the order wiki — not only in chat.

  
- **[Playbook](/docs/configuration/playbook.md)** — Order Lab playbook tab + full ringization playbook.

### Typical buyer path

1. Open **My Projects** → your order → **Secrets**.
2. Fill Firebase / RingBase / public URL fields using the doc links on the panel.
3. Create a [WalletConnect (Reown) Project ID](/docs/configuration/walletconnect.md) and set `NEXT_PUBLIC_WALLETCONNECT_PROJECT_ID`.
4. Capture decisions on the **Wiki** tab; follow the **Playbook** checklist with your integrator.
5. Integrator deploys — secrets apply on next deploy (`appliedOnNextDeploy`).

### For developers

## Module map (verified)

| Concern | Path |
|---------|------|
| Buyer secrets UI | `features/crm/orders/owner-secrets-panel.tsx` |
| Ownership taxonomy | `features/crm/lab/env-key-ownership.ts` (`owner_private` \| `public_shared` \| `integrator_ops`) |
| Template allowlist | `env.local.template` → `env-template-parser.ts` |
| Buyer env API | `GET/PATCH /api/my-orders/[id]/env` |
| Project overlay | `project_orders.data.projectConfig` · `?tab=project` |
| Order Lab tabs | `features/crm/lab/order-lab-tabs.ts` |

### Write roles

| Role | May PATCH |
|------|-----------|
| **buyer** | `owner_private` + `public_shared` |
| **integrator** | `integrator_ops` + `public_shared` |
| **admin** | all except brand-mirror keys (those come from projectConfig apply) |

Brand mirrors (`NEXT_PUBLIC_BRAND_*`, `RING_ORDER_PROJECT_CONFIG`) are **not** writable via env routes — they flow from Order Project Config on deploy.

## Related documentation

  
- [configuration/walletconnect](/docs/configuration/walletconnect.md) — Next-step: obtain and paste NEXT_PUBLIC_WALLETCONNECT_PROJECT_ID.

  
- [configuration/secrets](/docs/configuration/secrets.md) — Deep-dive: ownership model and Secrets tab save flow.

  
- [features/owner-project-lab](/docs/features/owner-project-lab.md) — Prerequisite: My Projects / Order Lab desk surfaces.

  
- [deployment/environment](/docs/deployment/environment.md) — See-also: full env.local.template reference (integrator depth).

  
- [integrations/ethereum-wallets](/docs/integrations/ethereum-wallets.md) — Same-workflow: Wagmi connectors gated on WalletConnect project ID.
