Skip to content

docs: Document bring your own Cloud Storage bucket#1856

Open
IchordeDionysos wants to merge 1 commit into
CapSoftware:mainfrom
simpleclub-extended:docs/cloud-storage-s3-compatibility
Open

docs: Document bring your own Cloud Storage bucket#1856
IchordeDionysos wants to merge 1 commit into
CapSoftware:mainfrom
simpleclub-extended:docs/cloud-storage-s3-compatibility

Conversation

@IchordeDionysos
Copy link
Copy Markdown

@IchordeDionysos IchordeDionysos commented May 21, 2026

Adds documentation on how to configure cap.so to work with your own Cloud Storage bucket.

Greptile Summary

This PR adds a new MDX documentation page guiding users through connecting a Google Cloud Storage bucket to Cap Desktop via S3 interoperability credentials.

  • The numbered sub-steps inside "Step 3" jump from item 3 to item 5 then back to item 4, inverting the intended order and likely confusing users following the guide sequentially.
  • The region example (us-east-1) uses AWS naming convention; GCS regions follow a different format (us-central1, europe-west1) and the wrong value here will cause the Cap Desktop connection to fail.

Confidence Score: 3/5

Two factual errors in the guide would cause users to either get confused by mis-ordered steps or end up with a broken Cap Desktop connection due to the wrong region format.

The mis-numbered sub-steps and the incorrect AWS-style region example are both actionable errors that directly affect users following the documentation — one breaks the logical flow and the other leads to a misconfigured connection that won't work.

apps/web/content/docs/s3-config/google-cloud-storage.mdx — step ordering and region identifier need correction before publishing

Important Files Changed

Filename Overview
apps/web/content/docs/s3-config/google-cloud-storage.mdx New GCS setup guide with two content-accuracy issues (step numbering inverted 3→5→4 and AWS-style region example) plus three prose typos
Prompt To Fix All With AI
Fix the following 5 code review issues. Work through them one at a time, proposing concise fixes.

---

### Issue 1 of 5
apps/web/content/docs/s3-config/google-cloud-storage.mdx:61-71
Steps 4 and 5 are numbered out of order — the list jumps from item 3 directly to item 5, then back to item 4. A user following the guide sequentially would be confused about whether to do CORS first or retrieve credentials first, and would have no item 4 at first glance.

```suggestion
4. **Configure CORS Settings**:
   - Switch to the "Configuration" tab, scroll down to "Cross-origin resource sharing"
   - Click "Edit" and "Allow cross-origin resource sharing"
   - Add the following CORS configuration:
     - Allowed origins: `https://cap.so,https://www.cap.so,https://cap.link,https://www.cap.link`
     - Under "Specify methods", select "GET", "HEAD", and "PUT"
     - For allowed response headers enter: `*`
     - For cache expiry time enter: `3000`
   - Click "Save"

5. **Retrieve your S3 Interoperability credentials**:
```

### Issue 2 of 5
apps/web/content/docs/s3-config/google-cloud-storage.mdx:86
The example region `us-east-1` is an AWS region identifier format. Google Cloud Storage regions use a different naming convention (e.g., `us-east1`, `us-central1`, `europe-west1`), without the hyphen before the trailing number. Using an AWS-style name will cause the Cap Desktop configuration to fail when the app tries to resolve the GCS endpoint.

```suggestion
   - Region: Your bucket's region (e.g., `us-central1` or `europe-west1`)
```

### Issue 3 of 5
apps/web/content/docs/s3-config/google-cloud-storage.mdx:30
Spurious "in" makes the instruction grammatically incorrect — should read "Go to IAM and Admin".

```suggestion
   - Go to IAM and Admin > Service Accounts, click "Create service account"
```

### Issue 4 of 5
apps/web/content/docs/s3-config/google-cloud-storage.mdx:47-48
"decided" should be "decide" (imperative mood), and the second `Data protection` bullet is missing its leading `- ` so it renders as a continuation of the first bullet rather than a separate list item.

```suggestion
   - Under "Data protection", decide whether you want to keep "Soft-delete policy" enabled (this will allow you to recover accidentally deleted files)
   - Under "Data protection", keep "Object versioning" disabled
```

### Issue 5 of 5
apps/web/content/docs/s3-config/google-cloud-storage.mdx:73
"Interopability" is a misspelling; the correct spelling is "Interoperability". A user searching the GCS UI for the misspelled tab name may not find it.

```suggestion
   - Go to "Interoperability" tab
```

Reviews (1): Last reviewed commit: "docs: Document bring your own Cloud Stor..." | Re-trigger Greptile

Greptile also left 5 inline comments on this PR.

@superagent-security superagent-security Bot added contributor:verified Contributor passed trust analysis. pr:verified PR passed security analysis. labels May 21, 2026
Comment on lines +61 to +71
5. **Configure CORS Settings**:
- Switch to the "Configuration" tab, scroll down to "Cross-origin resource sharing"
- Click "Edit" and "Allow cross-origin resource sharing"
- Add the following CORS configuration:
- Allowed origins: `https://cap.so,https://www.cap.so,https://cap.link,https://www.cap.link`
- Under "Specify methods", select "GET", "HEAD", and "PUT"
- For allowed response headers enter: `*`
- For cache expiry time enter: `3000`
- Click "Save"

4. **Retrieve your S3 Interoperability credentials**:
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Steps 4 and 5 are numbered out of order — the list jumps from item 3 directly to item 5, then back to item 4. A user following the guide sequentially would be confused about whether to do CORS first or retrieve credentials first, and would have no item 4 at first glance.

Suggested change
5. **Configure CORS Settings**:
- Switch to the "Configuration" tab, scroll down to "Cross-origin resource sharing"
- Click "Edit" and "Allow cross-origin resource sharing"
- Add the following CORS configuration:
- Allowed origins: `https://cap.so,https://www.cap.so,https://cap.link,https://www.cap.link`
- Under "Specify methods", select "GET", "HEAD", and "PUT"
- For allowed response headers enter: `*`
- For cache expiry time enter: `3000`
- Click "Save"
4. **Retrieve your S3 Interoperability credentials**:
4. **Configure CORS Settings**:
- Switch to the "Configuration" tab, scroll down to "Cross-origin resource sharing"
- Click "Edit" and "Allow cross-origin resource sharing"
- Add the following CORS configuration:
- Allowed origins: `https://cap.so,https://www.cap.so,https://cap.link,https://www.cap.link`
- Under "Specify methods", select "GET", "HEAD", and "PUT"
- For allowed response headers enter: `*`
- For cache expiry time enter: `3000`
- Click "Save"
5. **Retrieve your S3 Interoperability credentials**:
Prompt To Fix With AI
This is a comment left during a code review.
Path: apps/web/content/docs/s3-config/google-cloud-storage.mdx
Line: 61-71

Comment:
Steps 4 and 5 are numbered out of order — the list jumps from item 3 directly to item 5, then back to item 4. A user following the guide sequentially would be confused about whether to do CORS first or retrieve credentials first, and would have no item 4 at first glance.

```suggestion
4. **Configure CORS Settings**:
   - Switch to the "Configuration" tab, scroll down to "Cross-origin resource sharing"
   - Click "Edit" and "Allow cross-origin resource sharing"
   - Add the following CORS configuration:
     - Allowed origins: `https://cap.so,https://www.cap.so,https://cap.link,https://www.cap.link`
     - Under "Specify methods", select "GET", "HEAD", and "PUT"
     - For allowed response headers enter: `*`
     - For cache expiry time enter: `3000`
   - Click "Save"

5. **Retrieve your S3 Interoperability credentials**:
```

How can I resolve this? If you propose a fix, please make it concise.

- Secret Access Key (from interoperability credentials creation)
- Endpoint (enter "https://storage.googleapis.com")
- Bucket Name: Your bucket name
- Region: Your bucket's region (e.g., us-east-1)
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 The example region us-east-1 is an AWS region identifier format. Google Cloud Storage regions use a different naming convention (e.g., us-east1, us-central1, europe-west1), without the hyphen before the trailing number. Using an AWS-style name will cause the Cap Desktop configuration to fail when the app tries to resolve the GCS endpoint.

Suggested change
- Region: Your bucket's region (e.g., us-east-1)
- Region: Your bucket's region (e.g., `us-central1` or `europe-west1`)
Prompt To Fix With AI
This is a comment left during a code review.
Path: apps/web/content/docs/s3-config/google-cloud-storage.mdx
Line: 86

Comment:
The example region `us-east-1` is an AWS region identifier format. Google Cloud Storage regions use a different naming convention (e.g., `us-east1`, `us-central1`, `europe-west1`), without the hyphen before the trailing number. Using an AWS-style name will cause the Cap Desktop configuration to fail when the app tries to resolve the GCS endpoint.

```suggestion
   - Region: Your bucket's region (e.g., `us-central1` or `europe-west1`)
```

How can I resolve this? If you propose a fix, please make it concise.


1. **Create Service Account First**:

- Go to in IAM and Admin > Service Accounts, click "Create service account"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Spurious "in" makes the instruction grammatically incorrect — should read "Go to IAM and Admin".

Suggested change
- Go to in IAM and Admin > Service Accounts, click "Create service account"
- Go to IAM and Admin > Service Accounts, click "Create service account"
Prompt To Fix With AI
This is a comment left during a code review.
Path: apps/web/content/docs/s3-config/google-cloud-storage.mdx
Line: 30

Comment:
Spurious "in" makes the instruction grammatically incorrect — should read "Go to IAM and Admin".

```suggestion
   - Go to IAM and Admin > Service Accounts, click "Create service account"
```

How can I resolve this? If you propose a fix, please make it concise.

Comment on lines +47 to +48
- Under "Data protection", decided whether you want to keep "Soft-delete policy" enabled (this will allow you to recover accidentally deleted files)
Under "Data protection", keep "Object versioning" disabled
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 "decided" should be "decide" (imperative mood), and the second Data protection bullet is missing its leading - so it renders as a continuation of the first bullet rather than a separate list item.

Suggested change
- Under "Data protection", decided whether you want to keep "Soft-delete policy" enabled (this will allow you to recover accidentally deleted files)
Under "Data protection", keep "Object versioning" disabled
- Under "Data protection", decide whether you want to keep "Soft-delete policy" enabled (this will allow you to recover accidentally deleted files)
- Under "Data protection", keep "Object versioning" disabled
Prompt To Fix With AI
This is a comment left during a code review.
Path: apps/web/content/docs/s3-config/google-cloud-storage.mdx
Line: 47-48

Comment:
"decided" should be "decide" (imperative mood), and the second `Data protection` bullet is missing its leading `- ` so it renders as a continuation of the first bullet rather than a separate list item.

```suggestion
   - Under "Data protection", decide whether you want to keep "Soft-delete policy" enabled (this will allow you to recover accidentally deleted files)
   - Under "Data protection", keep "Object versioning" disabled
```

How can I resolve this? If you propose a fix, please make it concise.


4. **Retrieve your S3 Interoperability credentials**:
- In Cloud Storage switch to "Settings" via the side panel.
- Go to "Interopability" tab
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 "Interopability" is a misspelling; the correct spelling is "Interoperability". A user searching the GCS UI for the misspelled tab name may not find it.

Suggested change
- Go to "Interopability" tab
- Go to "Interoperability" tab
Prompt To Fix With AI
This is a comment left during a code review.
Path: apps/web/content/docs/s3-config/google-cloud-storage.mdx
Line: 73

Comment:
"Interopability" is a misspelling; the correct spelling is "Interoperability". A user searching the GCS UI for the misspelled tab name may not find it.

```suggestion
   - Go to "Interoperability" tab
```

How can I resolve this? If you propose a fix, please make it concise.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

contributor:verified Contributor passed trust analysis. pr:verified PR passed security analysis.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant