> For the complete documentation index, see [llms.txt](https://docs.darcyiq.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.darcyiq.com/organize/projects/portal.md).

# Project Portal

The **Project Portal** turns any project into a secure, customer-facing collaboration site. Instead of emailing status updates, exporting specs, or chasing feedback across inboxes, you publish exactly what you want your customer to see — and they log in to a branded portal to follow progress, comment, upload documents, and request changes.

The portal is **per-project**, fully **curated** (nothing is visible until you choose to share it), and **password-protected** for invited external users. You manage everything from the **Project Portal** tab on the project; your customers access it through a separate public link.

{% hint style="success" %}
**Engagement in action**: A delivery lead enables the portal on the "Acme Corp Cloud Migration" project, shares the project overview and three approved specs, invites two stakeholders at Acme, and turns on customer comments. Acme logs in, reviews the specs, requests a change on one of them, and uploads a network diagram — all without a single email thread, and the delivery team is notified automatically.
{% endhint %}

## Who Is This For?

| Audience                                   | Role in the Portal                                                                                           |
| ------------------------------------------ | ------------------------------------------------------------------------------------------------------------ |
| **Internal team** (project owners/editors) | Enable the portal, curate what's visible, invite customers, review uploads, send updates, and audit activity |
| **External end-customers** (portal users)  | Log in with email + password to view shared content, comment, upload documents, and request changes          |

## Key Benefits

| Benefit                   | Description                                                                           | Business Impact                                    |
| ------------------------- | ------------------------------------------------------------------------------------- | -------------------------------------------------- |
| **Curated by default**    | Nothing is shared until you explicitly enable it — overview, specs, threads, and more | You control exactly what the customer sees         |
| **Branded & secure**      | A dedicated portal URL with per-project, password-protected access                    | A professional, trustworthy customer experience    |
| **Two-way collaboration** | Customers comment on threads, request changes, and upload documents for review        | Feedback and assets land in one place              |
| **Stay in the loop**      | Your team is notified on comments, uploads, and change requests                       | Nothing from the customer slips through            |
| **Controlled uploads**    | Customer files land in a review queue before being added to the knowledge base        | Vet incoming content before it's indexed           |
| **Audit & compliance**    | Every portal action is logged, with export and data-management controls               | Transparency and accountability for the engagement |

## How the Portal Works

```mermaid
graph LR
    A["Enable<br/>Portal"] --> B["Curate<br/>Content"]
    B --> C["Invite<br/>Customers"]
    C --> D["Customer<br/>Collaborates"]
    D --> E["Team<br/>Notified"]
```

| Stage                     | What Happens                                                                                          |
| ------------------------- | ----------------------------------------------------------------------------------------------------- |
| **Enable Portal**         | An editor turns on the portal for the project, which generates a unique, shareable portal link        |
| **Curate Content**        | Choose what to share — project overview, specs, discussion threads, sidebar details, links, and app   |
| **Invite Customers**      | Add external users by name and email; they receive an invite with the portal link and a temp password |
| **Customer Collaborates** | Customers log in to view content, comment, upload documents, and request changes                      |
| **Team Notified**         | Comments, uploads, and change requests notify project owners and admins via email (and mobile push)   |

***

## Enabling the Portal

The portal is managed from the **Project Portal** tab on the project detail page. The tab is available to project **editors and owners** when your plan includes the Customer Portal feature.

{% stepper %}
{% step %}
**Open the Project Portal tab** From the project, open the **Project Portal** tab.
{% endstep %}

{% step %}
**Enable the portal** Click **Enable Project Portal**. DarcyIQ generates a unique portal link for the project and sets the portal to **Active**.
{% endstep %}

{% step %}
**Curate what's visible** Use the **Settings** sub-tab to choose which parts of the project to share (see below). Changes save automatically.
{% endstep %}

{% step %}
**Invite your customers** Add external users by name and email. Each receives an invite email containing the portal link and a temporary password.
{% endstep %}
{% endstepper %}

You can **pause** the portal at any time — paused portals block customer logins with a friendly message — and **resume** it later. Use the copy/open link controls to grab the portal URL to share manually.

{% hint style="info" %}
**Nothing is shared until you say so.** When you first enable the portal, customers see only the project name and description. Every other section — specs, threads, sidebar details, links, and the app — stays hidden until you turn it on.
{% endhint %}

***

## Curating What Customers See

The **Settings** sub-tab controls visibility. Each toggle maps to a specific part of the project:

| Setting                      | What It Shares                                                   |
| ---------------------------- | ---------------------------------------------------------------- |
| **Share Project Overview**   | The project definition (optionally limited to specific sections) |
| **Project Specs Curation**   | All specs, or hand-pick individual specs to publish              |
| **Share Discussion Threads** | Publish your team's discussion threads to the portal             |
| **Allow Customer Comments**  | Let portal users post comments and replies on shared threads     |
| **Share Project Details**    | Sidebar metadata such as client name and start/end dates         |
| **Share Project Links**      | The project's external links panel                               |
| **Share Project App**        | A read-only view of the linked project app                       |

### What stays private

Even with the portal enabled, the following is **never exposed** unless you explicitly share it:

* Internal team threads (unless **Share Discussion Threads** is on, or a customer is in their own thread)
* Other customers' change requests and private threads
* Tasks, meetings, development logs, and internal knowledge base files
* Internal file paths on uploads and full internal user profiles (staff appear by name or simply as "Staff")

***

## What Your Customers Can Do

Once logged in, portal users see a clean, branded view of the project organized into tabs:

| Tab               | What the Customer Can Do                                                                |
| ----------------- | --------------------------------------------------------------------------------------- |
| **Overview**      | Read the project description and shared definition; select text to **request a change** |
| **Project Specs** | Read shared specs and request changes on any of them                                    |
| **Threads**       | Read published threads and their own posts; comment and reply when comments are allowed |
| **Upload Docs**   | Upload documents (PDF, TXT, MD up to 10 MB) and track each file's review status         |
| **App**           | View a read-only version of the project app, when shared                                |

Customers can also open the **notification settings** (bell icon) to control which emails they receive and how often.

{% hint style="info" %}
**Change requests are private.** When a customer requests a change on the overview or a spec, it's captured as an internal request for your team — it isn't visible to other portal users.
{% endhint %}

***

## Inviting and Managing Portal Users

External users authenticate with **email and password**, scoped to a single project — they do **not** use your organization's staff login.

### Invite flow

1. From **Portal Management → Settings**, add a user by **name** and **email**.
2. DarcyIQ generates a **temporary password** and emails the user the portal link. The temporary password is sent in the email — never embedded in the URL.
3. On first login, the user enters the temporary password and chooses a new one. The temporary password expires after **24 hours**.
4. Passwords must be at least 8 characters with one uppercase letter and one number.

### Managing access

| Action             | Effect                                                      |
| ------------------ | ----------------------------------------------------------- |
| **Revoke access**  | Immediately blocks the user from logging in                 |
| **Reset password** | Issues a new temporary password and re-sends the invite     |
| **Pause portal**   | Blocks all customer logins for the project until you resume |

***

## Uploads & Review Queue

When customers upload documents, the files don't go straight into your project. They land in a **review queue** on the **Uploads** sub-tab, where your team can:

* **Accept** — adds the file to the project knowledge base so it's searchable in Darcy Chat
* **Decline** — removes the staged file

Uploads are limited to PDF, TXT, and Markdown files (up to 10 MB each, 10 files per request). Customers can see the status of their own uploads (pending, accepted, declined) and download files once accepted.

***

## Notifications

The portal keeps both sides informed without manual follow-up.

### Your team is notified when a customer:

| Event                    | Recipients                                         |
| ------------------------ | -------------------------------------------------- |
| Posts a comment or reply | Project owners and users with project admin access |
| Uploads documents        | Project owners and users with project admin access |
| Requests a change        | Project owners and users with project admin access |

Notifications are delivered by email (with a link to the project) and, when enabled, mobile push.

### Customers are notified about:

* Their **invite** and any **password reset**
* New **published thread posts and replies** they can see
* **Spec status changes** on specs they can see
* **Manual broadcasts** you send from the portal
* A **daily or weekly digest**, depending on their preference

A master switch lets a project owner disable all customer emails for the portal, and project owners can send a manual **"Notify portal users"** broadcast at any time. Every customer email includes a one-click unsubscribe.

***

## Audit & Compliance

The **Audit Logs** sub-tab records portal activity — logins, views, comments, uploads, change requests, and more — so you have a complete trail of what was shared and when. From here you can export logs, configure retention, and run data export or deletion for compliance needs.

***

## Best Practices

| Practice                              | Recommendation                                                                                        |
| ------------------------------------- | ----------------------------------------------------------------------------------------------------- |
| **Share approved content only**       | Publish specs once they reach **Approved**, and review the project overview before sharing it         |
| **Start with comments off**           | Enable customer comments deliberately, once you're ready for two-way discussion                       |
| **Review uploads promptly**           | Keep the upload queue clear so customer files make it into the knowledge base quickly                 |
| **Use broadcasts for milestones**     | Send a manual notification when you publish a major update so customers know to log in                |
| **Re-check visibility after changes** | When you add new specs or threads, confirm your curation toggles still reflect what you intend        |
| **Pause between phases**              | Pause the portal during quiet periods or internal rework, then resume when there's something to share |

{% hint style="info" %}
**Pro Tip**: Pair the portal with the **Weekly Status Report** automation. Generate the report internally, refine it, then publish a clean summary thread to the portal so customers always have a current view of progress.
{% endhint %}

## Next Steps

| Goal                                           | Documentation                                                      |
| ---------------------------------------------- | ------------------------------------------------------------------ |
| Create and refine the content you'll share     | [Definition & Specs](/organize/projects/definition-and-specs.md)   |
| Manage discussion threads                      | [Dashboard & Threads](/organize/projects/dashboard-and-threads.md) |
| Control who on your team can manage the portal | [Sharing and Permissions](/organize/projects.md)                   |
| Manage access with groups                      | [Groups & Access Control](/settings-and-configuration/groups.md)   |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.darcyiq.com/organize/projects/portal.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
