> For the complete documentation index, see [llms.txt](https://docs.feedbacky.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.feedbacky.net/getting-started/installation/configuring.md).

# Configuring

Open your `.env` file and edit the environment variables to fit your needs.

```bash
sudo nano .env
```

## Networking

| `REACT_APP_SERVER_IP_ADDRESS` | The IP address of your Virtual Private Server (VPS) or dedicated hardware or a domain. |
| ----------------------------- | -------------------------------------------------------------------------------------- |
| `CLIENT_APP_PORT`             | Port for the client application, by default it is 8090.                                |
| `SERVER_APP_PORT`             | Port for the server application, by default it is 8095.                                |

### Domain

You can use your own domain with Feedbacky, follow the guide below.

{% content-ref url="/pages/0ZnocidmH9ZPe5QhL5tr" %}
[Domain Setup](/getting-started/domain-setup.md)
{% endcontent-ref %}

## Security

| `JWT_SECRET` | A random generated token used for authentication purposes. |
| ------------ | ---------------------------------------------------------- |

Use this link to generate one yourself;

{% embed url="<https://www.grc.com/passwords.htm>" %}
Any other JWT secret token generation can also be used.
{% endembed %}

{% hint style="warning" %}
For extra security, random ASCII characters are recommended. Remember, **do not share** your token with anyone else!
{% endhint %}

## Database

| `MYSQL_USERNAME` | The username set during the database setup process.    |
| ---------------- | ------------------------------------------------------ |
| `MYSQL_PASSWORD` | The password set during the database setup process.    |
| `MYSQL_URL`      | Connection information that will be used by Feedbacky. |

## OAuth

Follow these steps to use the Discord OAuth.

1\. Access Discord's [Developer Portal](https://discord.com/developers/applications).

2\. Create a new OAuth application.

{% embed url="<https://cdn.feedbacky.net/static/mp4/discord-oauth-setup.mp4>" %}
3\. Add a new redirect with the IP address or domain set [here](#networking) and include `/auth/discord` at the end.
{% endembed %}

Follow these steps to use the GitHub OAuth.

1\. Access GitHub's [Developer settings](https://github.com/settings/developers).

2\. Create a new OAuth application.

{% embed url="<https://cdn.feedbacky.net/static/mp4/github-oauth-setup.mp4>" %}
3\. Fill the **Authorization callback URL** with the IP address or domain set [here](#networking) and include `/auth/github` at the end.
{% endembed %}

{% hint style="danger" %}
The Google OAuth guide is not yet available.
{% endhint %}

Follow these steps to use the GitLab OAuth.

1\. Access GitLab's [Developer Portal](https://gitlab.com/-/profile/applications).

2\. Create a new OAuth application.

3\. Add a new redirect with the IP address or domain set [here](#networking) and include `/auth/gitlab` at the end.

4\. Fill the necessary variables with your newly created Discord OAuth application.

| `OAUTH_GITLAB_ENABLED`      | Disabled by default, to use GitLab OAuth change to `true`.    |
| --------------------------- | ------------------------------------------------------------- |
| `OAUTH_GITLAB_REDIRECT_URI` | Your instance domain with `/auth/gitlab` included at the end. |
| `OAUTH_GITLAB_CLIENT_ID`    | Your OAuth client ID.                                         |
| `OAUTH_GITLAB_SECRET`       | Your OAuth client secret.                                     |

## Mail

| `MAIL_SERVICE_TYPE` | Choose one of the options below. |
| ------------------- | -------------------------------- |

{% tabs %}
{% tab title="SMTP" %}

| `MAIL_SMTP_USERNAME` | Your username.                         |
| -------------------- | -------------------------------------- |
| `MAIL_SMTP_PASSWORD` | The password.                          |
| `MAIL_SMTP_HOST`     | A reachable domain or IP address.      |
| `MAIL_SMTP_PORT`     | A reachable port, by default it is 25. |
| {% endtab %}         |                                        |

{% tab title="Mailgun" %}
[Mailgun](https://www.mailgun.com) is a mail provider supported by Feedbacky.

{% hint style="info" %}
Send up to 5000 mails during a *3 month trial* than *$0.80* per 1000 mails.

A credit card is also required for sign up.
{% endhint %}

*Pricing included for your convenience and may be out of date.*

| `MAIL_MAILGUN_API_KEY`      | Your Mailgun API key.  |
| --------------------------- | ---------------------- |
| `MAIL_MAILGUN_API_BASE_URL` | Your Mailgun base URL. |

{% hint style="warning" %}
Your base URL should look something like this;

`https://api.mailgun.net/<version>/<domain>/messages`
{% endhint %}
{% endtab %}

{% tab title="SendGrid" %}
[SendGrid](https://sendgrid.com) is a mail provider supported by Feedbacky.

{% hint style="info" %}
Send up to 100 mails per day for *free* and *forever*.
{% endhint %}

*Pricing included for your convenience and may be out of date.*

| `MAIL_SENDGRID_API_KEY`      | Your SendGrid API key.  |
| ---------------------------- | ----------------------- |
| `MAIL_SENDGRID_API_BASE_URL` | Your SendGrid base URL. |

{% hint style="warning" %}
Your base URL should look something like this;

`https://api.sendgrid.com/v3/mail/send`
{% endhint %}
{% endtab %}
{% endtabs %}

## Image Compression

| `IMAGE_COMPRESSION_ENABLED` | If you wish to use an Image compression service, `false` by default. |
| --------------------------- | -------------------------------------------------------------------- |
| `IMAGE_COMPRESSION_TYPE`    | At the moment Feedbacky only supports one image compression service. |

{% tabs %}
{% tab title="CheetahO" %}
[CheetahO](https://cheetaho.com) is an image compression service supported by Feedbacky.

{% hint style="info" %}
Compress up to 500 images for *free* each months.
{% endhint %}

*Pricing included for your convenience and may be out of date.*

| `IMAGE_COMPRESSION_CHEETAHO_API_KEY` | Your CheetahO API key. |
| ------------------------------------ | ---------------------- |
| {% endtab %}                         |                        |
| {% endtabs %}                        |                        |

## Integrations

{% hint style="info" %}
Integrations are only available for cloud-instance users at the moment!
{% endhint %}


---

# 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.feedbacky.net/getting-started/installation/configuring.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.
