### Set up and run the DecapBridge web client
Source: https://github.com/decapbridge/decapbridge-web/blob/main/README.md
Clone the repository, install dependencies with npm, and start the development server. Run these commands in a terminal from a directory where you want the project.
```sh
git clone git@github.com:decapbridge/decapbridge-web.git
cd decapbridge-web
npm i
npm run dev
```
--------------------------------
### DecapBridge web client directory structure
Source: https://github.com/decapbridge/decapbridge-web/blob/main/README.md
Shows the intended directory structure of the project. The tree lists main folders and their purpose, with comments indicating what each directory contains.
```text
src
├── cms # CMS schema & server-side data loaders
├── components # React components and client-only code
│ ├── core # App-wide code & framework configuration
│ ├── layouts # Layout components
│ ├── misc # Project-specific components that are used by layouts or pages
│ └── ui # Non-project specific UI components
├── hooks # React hooks
├── pages # Site pages. Page paths represent pages internal URL
├── renderer # Vike config
└── utils # Utility typescript functions
```
--------------------------------
### Google SSO environment variables
Source: https://github.com/decapbridge/decapbridge-web/blob/main/content/collections/docs/self-hosting.md
Set these environment variables in the API container to enable Google as an SSO provider. Requires an OAuth 2.0 client in the Google Cloud Console with the redirect URI set to https://auth.mycompany.com/auth/login/google/callback.
```env
AUTH_PROVIDERS=google
AUTH_GOOGLE_DRIVER=openid
AUTH_GOOGLE_CLIENT_ID=your-google-client-id
AUTH_GOOGLE_CLIENT_SECRET=your-google-client-secret
AUTH_GOOGLE_ISSUER_URL=https://accounts.google.com
AUTH_GOOGLE_IDENTIFIER_KEY=email
```
--------------------------------
### Decap CMS admin index.html
Source: https://github.com/decapbridge/decapbridge-web/blob/main/content/collections/docs/getting-started.md
Place this index.html in an admin folder at the root of your public assets directory to set up the Decap CMS admin page. Use a version higher than v3.8.3 to support "Login with Google" and "Login with Microsoft".
```html
My-website Admin page
```
--------------------------------
### Set DECAPBRIDGE_LICENSE_KEY environment variable
Source: https://github.com/decapbridge/decapbridge-web/blob/main/content/collections/docs/self-hosting.md
Set the license key as an environment variable in the API container to enable commercial self-hosting. The key is received by email after purchasing the Lifetime pro plan.
```env
DECAPBRIDGE_LICENSE_KEY=key-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.xxxxxxxxxxxxxx
```
--------------------------------
### Microsoft SSO environment variables
Source: https://github.com/decapbridge/decapbridge-web/blob/main/content/collections/docs/self-hosting.md
Set these environment variables in the API container to enable Microsoft as an SSO provider. Requires an app registration in the Azure Portal with the redirect URI set to https://auth.mycompany.com/auth/login/microsoft/callback.
```env
AUTH_PROVIDERS=microsoft
AUTH_MICROSOFT_DRIVER=openid
AUTH_MICROSOFT_CLIENT_ID=your-microsoft-client-id
AUTH_MICROSOFT_CLIENT_SECRET=your-microsoft-client-secret
AUTH_MICROSOFT_ISSUER_URL=https://login.microsoftonline.com/your-tenant-id/v2.0/.well-known/openid-configuration
AUTH_MICROSOFT_IDENTIFIER_KEY=email
```
--------------------------------
### Configure SMTP email transport
Source: https://github.com/decapbridge/decapbridge-web/blob/main/content/collections/docs/self-hosting.md
Configure SMTP email transport for sending invite notifications. Works with any SMTP-compatible provider such as Postmark, SendGrid, Brevo, or Resend.
```env
EMAIL_TRANSPORT=smtp
EMAIL_FROM=no-reply@mycompany.com
EMAIL_SMTP_HOST=smtp.example.com
EMAIL_SMTP_PORT=587
EMAIL_SMTP_USER=your-smtp-user
EMAIL_SMTP_PASSWORD=your-smtp-password
EMAIL_SMTP_SECURE=false
```
--------------------------------
### Configure sendmail email transport
Source: https://github.com/decapbridge/decapbridge-web/blob/main/content/collections/docs/self-hosting.md
Configure sendmail email transport using the system's sendmail binary. Only practical if your container has a local MTA configured.
```env
EMAIL_TRANSPORT=sendmail
EMAIL_FROM=no-reply@mycompany.com
```
--------------------------------
### Configure Mailgun email transport
Source: https://github.com/decapbridge/decapbridge-web/blob/main/content/collections/docs/self-hosting.md
Configure Mailgun email transport for sending invite notifications. Requires a Mailgun API key and domain.
```env
EMAIL_TRANSPORT=mailgun
EMAIL_FROM=no-reply@mycompany.com
EMAIL_MAILGUN_API_KEY=your-mailgun-api-key
EMAIL_MAILGUN_DOMAIN=mg.mycompany.com
```
--------------------------------
### Configure AWS SES email transport
Source: https://github.com/decapbridge/decapbridge-web/blob/main/content/collections/docs/self-hosting.md
Configure AWS SES email transport for sending invite notifications. Requires AWS region and credentials.
```env
EMAIL_TRANSPORT=ses
EMAIL_FROM=no-reply@mycompany.com
EMAIL_SES_REGION=us-east-1
EMAIL_SES_CREDENTIALS__ACCESS_KEY_ID=your-access-key-id
EMAIL_SES_CREDENTIALS__SECRET_ACCESS_KEY=your-secret-access-key
```
=== COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.