# How to host a remote Kavita e-book server

## Introduction <a href="#introduction" id="introduction"></a>

[Kavita](https://www.kavitareader.com/) is a multi-platform, open-source digital library server. It allows you to import your e-book collection and then conveniently access it from any device. Such a setup eliminates the need for downloading files on different devices and keeping track of your progress on each one.

Since the Kavita server is web-based, it can be easily shared between peers. However, leaving your home network open for remote access can be considered a vulnerability and be exploited for malicious intents.

By using [Meshnet](https://nordvpn.com/meshnet/), you don’t have to set up [port forwarding](https://nordvpn.com/blog/port-forwarding/) or manually configure a [VPN connection](https://nordvpn.com/what-is-a-vpn/). Meshnet uses encrypted network tunnels to connect devices into a single virtual network allowing secure, unrestricted remote connections.

This article demonstrates how you can self-host a Kavita server for your digital book collection using Docker and remotely connect to the server via Meshnet.

## Prerequisites <a href="#prerequisites" id="prerequisites"></a>

Before you begin, ensure you have [Docker](https://docs.docker.com/get-started/overview/) and [Docker Compose](https://docs.docker.com/compose/) installed on your device. You can find instructions on how to download and install these tools on the Docker website:

* [Docker Desktop instructions for Windows](https://docs.docker.com/desktop/install/windows-install/)
* [Docker Desktop instructions for macOS](https://docs.docker.com/desktop/install/mac-install/)
* [Docker Desktop Instructions for Linux](https://docs.docker.com/desktop/install/linux-install/)
  * [Docker Engine instructions for Linux (CLI only)](https://docs.docker.com/engine/install/)
  * [Docker Compose instructions for Linux (CLI only)](https://docs.docker.com/compose/install/linux/)

{% hint style="info" %}
**Note**

Docker Compose comes pre-installed with Docker Desktop.
{% endhint %}

## Create your Kavita instance using Docker  <a href="#create-your-kavita-instance-using-docker" id="create-your-kavita-instance-using-docker"></a>

You can begin preparing your Kavita server once you have Docker running on your device.

### Prepare a Docker Compose file <a href="#prepare-a-docker-compose-file" id="prepare-a-docker-compose-file"></a>

To start, you have to define the instructions for deploying the Kavita instance. This is done in the form of a Docker Compose file.

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

1. Open **PowerShell**.
2. In your preferred directory, make a new `kavita` folder and navigate to it using the following command:\
   &#x20;

   <pre class="language-bash" data-overflow="wrap"><code class="lang-bash">mkdir kavita; cd kavita
   </code></pre>

   &#x20;
3. Create a `docker-compose.yml` file and open it using Notepad by running:\
   &#x20;

   <pre class="language-bash" data-overflow="wrap"><code class="lang-bash">notepad docker-compose.yml
   </code></pre>

   &#x20;

   When prompted to create the file, click **Yes**.

   <div align="left"><figure><picture><source srcset="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FUQ7zrsz8Itjhh6ZzY4Ox%2Fkavita_compose_file_win_notepad_dark.png?alt=media&#x26;token=fd9adc6b-1210-4d65-b0f6-7f5812c8f1f4" media="(prefers-color-scheme: dark)"><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FxrlrXaYUrLHQeST3gAjM%2Fkavita_compose_file_win_notepad.png?alt=media&#x26;token=52234e70-dc96-4190-805a-c77acee53499" alt="Notepad dialog asking to create a file, with the &#x22;Yes&#x22; button highlighted." width="375"></picture><figcaption></figcaption></figure></div>

   &#x20;
4. In **Notepad**, paste the following instructions for the Kavita Docker container:\
   &#x20;

   <pre class="language-yaml" data-overflow="wrap"><code class="lang-yaml">services:
       kavita:
           image: jvmilazz0/kavita:latest
           container_name: kavita
           volumes:
               - .\data:/kavita/config
               - &#x3C;\path\to\e-books>:/books
           environment:
               - TZ=&#x3C;TimeZone>
           ports:
               - "5000:5000"
           restart: unless-stopped
   </code></pre>

   &#x20;
5. Update the placeholders with the values relevant to your configuration:
   * Replace `<\path\to\e-books>` with the path to your e-book folder.
   * Replace `<TimeZone>` with your [time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List).\
     &#x20;

     **Example**

     <div align="left"><figure><picture><source srcset="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FK5x7xCvH5xDvNzWx9Pyx%2Fkavita_compose_file_win_dark.png?alt=media&#x26;token=d599cec3-2016-4512-8b64-73f9a6ec7a7f" media="(prefers-color-scheme: dark)"><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2Ftwcm8zunzdONHNkThadX%2Fkavita_compose_file_win.png?alt=media&#x26;token=5fa27c4c-f6ac-4381-819a-7f79401f08a4" alt="Notepad window with two lines highlighted."></picture><figcaption></figcaption></figure></div>

     &#x20;
6. Press **Ctrl** + **S** to save changes.
7. Exit **Notepad**.

{% hint style="success" %}
**Tip**

If you want to include additional folders, such as comic books and manga, you can append new lines under the `volumes` section. For example:

```yaml
- <\path\to\comics>:/comics
- <\path\to\manga>:/manga
```

{% endhint %}
{% endtab %}

{% tab title="macOS and Linux" %}

1. Open **Terminal**.
2. In your preferred directory, make a new `kavita` folder and navigate to it using the following command:\
   &#x20;

   <pre class="language-bash" data-overflow="wrap"><code class="lang-bash">mkdir kavita &#x26;&#x26; cd kavita
   </code></pre>

   &#x20;
3. Create a `docker-compose.yml` file and open it using the Nano text editor by running:\
   &#x20;

   <pre class="language-bash" data-overflow="wrap"><code class="lang-bash">nano docker-compose.yml
   </code></pre>

   &#x20;
4. In the compose file, paste the following instructions for the Kavita Docker container:\
   &#x20;

   <pre class="language-yaml" data-overflow="wrap"><code class="lang-yaml">services:
       kavita:
           image: jvmilazz0/kavita:latest
           container_name: kavita
           volumes:
               - ./data:/kavita/config
               - &#x3C;/path/to/e-books>:/books
           environment:
               - TZ=&#x3C;TimeZone>
           ports:
               - "5000:5000"
           restart: unless-stopped
   </code></pre>

   &#x20;
5. Update the placeholders with the values relevant to your configuration:
   * Replace `</path/to/e-books>` with the path to your e-book folder.
   * Replace `<TimeZone>` with your [time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List).\
     &#x20;

     **Example**

     <div align="left"><figure><picture><source srcset="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FnE1UF6MovDk3KODQ9UnX%2Fkavita_compose_file_mac_dark.png?alt=media&#x26;token=41cf1c90-ce20-49ef-b2c1-f319dbe757ac" media="(prefers-color-scheme: dark)"><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FzO6NPxSj8o2K56TDirUN%2Fkavita_compose_file_mac.png?alt=media&#x26;token=29cb77f9-5d0c-477a-91f4-68bc371a929b" alt="Terminal window with two lines highlighted."></picture><figcaption></figcaption></figure></div>

     &#x20;
6. Press **Ctrl** + **X**, **Y**, and **Enter** to save changes and exit the text editor.

{% hint style="success" %}
**Tip**

If you want to include additional folders, such as comic books and manga, you can append new lines under the `volumes` section. For example:

{% code overflow="wrap" %}

```yaml
- </path/to/comics>:/comics
- </path/to/manga>:/manga
```

{% endcode %}
{% endhint %}
{% endtab %}
{% endtabs %}

### Deploy the Kavita container <a href="#deploy-the-kavita-container" id="deploy-the-kavita-container"></a>

Now, you can use the instructions declared in the compose file to create your Kavita server instance. To deploy the container, while in the `kavita` directory, run the following command:

{% code overflow="wrap" %}

```bash
docker compose up -d
```

{% endcode %}

Docker will [pull the Kavita image](https://docs.docker.com/engine/reference/commandline/pull/) from [Docker Hub](https://hub.docker.com/r/jvmilazz0/kavita) and deploy the container.

### Verify the container status <a href="#verify-the-container-status" id="verify-the-container-status"></a>

Run the `docker ps` command to check the state of the container. In the output, under `STATUS`, you should see `Up` and the duration indicating how long the container has been active.

<div align="left"><figure><picture><source srcset="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FCRw6ahZxSftpf88loipU%2Fkavita_docker_ps_dark.png?alt=media&#x26;token=b5f1f937-c7bb-4276-bee0-a4e7a05f5524" media="(prefers-color-scheme: dark)"><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FIKa2NI7rjPd8T2k9y9Tm%2Fkavita_docker_ps.png?alt=media&#x26;token=f8df0c9e-b487-4617-b5b1-f3249efa1a2e" alt="Terminal output showing the container status as &#x22;Up&#x22;"></picture><figcaption></figcaption></figure></div>

## Personalize your Kavita server <a href="#personalize-your-kavita-server" id="personalize-your-kavita-server"></a>

The Kavita server is controlled and used directly from a web interface which is created when the service is deployed.

### Set up an administrator user <a href="#set-up-an-administrator-user" id="set-up-an-administrator-user"></a>

To start using the server, you need to create an administrator account. This account will have all of the permissions to manage the server.

1. Open your internet browser.
2. Navigate to the following URL:\
   &#x20;\
   `localhost:5000/`\
   &#x20;
3. Fill in the following details:
   * In the **Username** field, enter a custom username for the administrator account.
   * In the **Email** field, type in an email address that should be associated with the administrator user.
   * In the **Password** field, enter a strong password that will be used for administrator authentication.
4. Click **Register**.

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FDGUtA1Ywp58jBI2SkNhs%2Fkavita_register.png?alt=media&#x26;token=c97bee70-b621-4f6b-ab45-b68a30690bad" alt="&#x22;Register&#x22; button highlighted with the username, email, and password fields filled in." width="375"><figcaption></figcaption></figure></div>

   &#x20;
5. On the login page, enter your newly created authentication details and click **Submit.**

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FYqW0gvKPixrzqN30u45C%2Fkavita_login.png?alt=media&#x26;token=61231d8f-6947-4c94-a91b-89d7ba82be19" alt="&#x22;Submit&#x22; button highlighted on the login screen." width="375"><figcaption></figcaption></figure></div>

You should now see the home page of the Kavita web interface.

### Add your e-book library <a href="#add-your-e-book-library" id="add-your-e-book-library"></a>

Currently, your Kavita server does not display any e-books present in the folder you provided when deploying the Docker container. To fix this, you need to create a new library and point it to the location of your e-book collection.

1. On the Kavita web interface, in the upper-right corner, click **Server settings**.

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FXQ9GPD9KWjVOU4OEjXhf%2Fkavita_settings.png?alt=media&#x26;token=4ba63b14-7902-41dc-90b6-e850509d0a97" alt="&#x22;Server settings&#x22; icon button highlighted."><figcaption></figcaption></figure></div>

   &#x20;
2. Select the **Libraries** tab and click **Add library.**
3. In the **Name** field, enter a custom name for the new library.
4. From the **Type** dropdown list, select **Book**, and click **Next**.

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FyMvd8UpcRjEfoXbbi9cv%2Fkavita_lib_general.png?alt=media&#x26;token=c759fdd8-6439-4688-9cb2-03fe4ff53d16" alt="&#x22;Book&#x22; type selected and &#x22;Next&#x22; button highlighted." width="563"><figcaption></figcaption></figure></div>

   &#x20;
5. Click **Browse for media folders**.
6. Select `/`, then `books`, and click **Share**.

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FS43naPI51M7hh9xqj165%2Fkavita_lib_path.png?alt=media&#x26;token=222362c2-0aac-4494-9d83-d2b515f1af48" alt="Path to the e-book folder and &#x22;Share&#x22; button highlighted." width="563"><figcaption></figcaption></figure></div>

   &#x20;
7. Click **Next** twice and then **Save** to finish.

The newly added folder should now be visible under **Libraries**.

<div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FJzwlJ870k4Bm0aasBqFD%2Fkavita_lib_added.png?alt=media&#x26;token=25b96803-70f1-4010-825a-6a8c615d76ad" alt="&#x22;Libraries&#x22; tab of the Kavita dashboard showing the new library."><figcaption></figcaption></figure></div>

{% hint style="info" %}
**Note**

Ensure that your e-book folder structure follows the requirements provided in the [Kavita documentation](https://wiki.kavitareader.com/guides/scanner/#file-layout). Otherwise, the server may not detect your e-books.
{% endhint %}

### Turn on automatic library scans <a href="#turn-on-automatic-library-scans" id="turn-on-automatic-library-scans"></a>

To make sure that your libraries are updated as soon as possible, you can enable the "Folder watching" feature of Kavita. It will monitor your library folders for any changes and update them when necessary.

1. Open the **Server settings** page.
2. In the **General** tab, scroll down to the **Folder watching**.
3. Turn on the **Enable folder watching** toggle.

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2Fdrgit3t5k8oQc8QCz6M4%2Fkavita_folder_watch.png?alt=media&#x26;token=c73bc13e-e9e3-4188-9b07-e5feb700c333" alt="&#x22;Enable folder watching&#x22; toggle turned on." width="563"><figcaption></figcaption></figure></div>

   &#x20;
4. Click **Save**.

### Invite additional users <a href="#invite-additional-users" id="invite-additional-users"></a>

If you wish to share access to the Kavita server with your friends or family, it is advisable to have distinct accounts for each user. Kavita has a user management system that allows you to send invitation links or manually create accounts yourself.

To create a new user account:

1. Open Kavita **Server settings**.
2. Select the **Users** tab and click **Invite**.

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2Ffm8JnMpH3RMoJCAo4WhP%2Fkavita_invite_button.png?alt=media&#x26;token=a6957170-684b-4b33-b993-6b3bcf70772d" alt="&#x22;Invite&#x22; button highlighted."><figcaption></figcaption></figure></div>

   &#x20;
3. In the **Email field**, enter a username for the new user account.
4. Select the roles and libraries you want the new account to have access to and click **Invite**.

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FXzAuMT7iJdTAKQ18GkXx%2Fkavita_invite_roles.png?alt=media&#x26;token=fdd0ce8d-8698-49b5-a1c9-52850a3bbf72" alt="&#x22;Invite&#x22; button highlighted with the roles and libraries for the new user account selected." width="563"><figcaption></figcaption></figure></div>

You should now see a registration link in the **Invite url** field. From here, you can choose if you want to finish the new user creation yourself or send the invitation link to your Meshnet peer.

<details>

<summary>Complete account setup</summary>

To finish the user creation process yourself:

1. Copy the provided URL.

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FEetkNITSCh3RTYm2miCi%2Fkavita_copy_url.png?alt=media&#x26;token=120418dd-a4ee-4713-92b1-2b2990ccc702" alt="Copy button next to the invite URL highlighted."><figcaption></figcaption></figure></div>

   &#x20;
2. Open a new tab in your browser.
3. Paste the copied link in the URL field.
4. Fill in the **Username** and **Password** fields, and click **Register**.

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FVvKcGuONFTtIJKVrwp1f%2Fkavita_register_new.png?alt=media&#x26;token=1cf41978-00fc-4b87-a98b-a0686b3e5594" alt="Registration form with the account details filled in." width="375"><figcaption></figcaption></figure></div>

A notification claiming **Account registration complete** should prompt.

</details>

<details>

<summary>Send invitation</summary>

To send an invitation to your Meshnet peer:

1. Copy the provided URL.

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FEetkNITSCh3RTYm2miCi%2Fkavita_copy_url.png?alt=media&#x26;token=120418dd-a4ee-4713-92b1-2b2990ccc702" alt="Copy button next to the invite URL highlighted."><figcaption></figcaption></figure></div>

   &#x20;
2. Change the `localhost` part of the link to the Nord name of your Kavita server.\
   &#x20;\
   **Example**

   <pre data-overflow="wrap"><code>http:/secret.meerkat-himalayas.nord:5000/registration/confirm-email?token=CfDJ8GCw%2fIYkjOBCikS3942rGk%2f1oYUHCPIC6fHx%2bYM%2fZW%2bP04ir6UiYOaeyk2UVAZc2FE5ug9Zc2MGmg%2fMTgSyPcdrS3QrK3ZaIx6j5Pl1Pkya2bqrO7pLNkcCm2ne8ndLA8UgTElFkx7NH9SZMUbIPxDsfN83iqLVOkAXhDkk1dusAcieahaz6s1lmr3r68tU9Qg%3d%3d&#x26;email=fernando.thewhale
   </code></pre>

   &#x20;
3. Share the updated link with your peer.

After opening the link, the invitee will need to fill in the registration details and create the account.

</details>

## Remotely access your e-books with Meshnet <a href="#remotely-access-your-e-books-with-meshnet" id="remotely-access-your-e-books-with-meshnet"></a>

Your Kavita e-book server is now fully set up and ready for use. You can remotely connect to the server over Meshnet by either using a third-party e-book reader app or directly from your internet browser.

{% hint style="info" %}
**Note**

If you're hosting Kavita on a Linux device, you must grant the [local network permission](https://meshnet.nordvpn.com/features/explaining-permissions/local-network-permissions) for the devices accessing it. For more information, see [Common issues on Linux](https://meshnet.nordvpn.com/troubleshooting/linux#cannot-access-docker-containers-over-meshnet).
{% endhint %}

### Method 1: Using mobile reader apps <a href="#method-1-using-mobile-reader-apps" id="method-1-using-mobile-reader-apps"></a>

This section contains instructions for connecting to the Kavita server using the [Moon+ Reader](https://www.moondownload.com/) app on Android as an example.

You can download and install Moon+ Reader for free from [Google Play](https://play.google.com/store/apps/details?id=com.flyersoft.moonreader\&hl=en\&gl=US). After installing the app:

1. Copy the Nord name of the device hosting the Kavita server from the NordVPN app.
2. Launch **Moon+ Reader**.
3. If prompted, grant the **All files access** permission to the reader app.

   <div align="left"><figure><picture><source srcset="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FT6YODsHSZm0jSeH8ltxY%2Fkavita_moon_all_files_dark.png?alt=media&#x26;token=7c474161-bcf5-40bb-a494-9dd39b141bdc" media="(prefers-color-scheme: dark)"><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FZoXeTapZu8beKUL6XSCE%2Fkavita_moon_all_files.png?alt=media&#x26;token=c6c358d0-c37a-4837-be19-9b91151d917f" alt="&#x22;Allow access to manage all files&#x22; toggle enabled." width="375"></picture><figcaption></figcaption></figure></div>

   &#x20;
4. Tap the arrow icon in the upper-right corner of the **Net library** section.

   <div align="left"><figure><picture><source srcset="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FMziSS1N4O34wzUJJLB5P%2Fkavita_moon_net_arrow_dark.png?alt=media&#x26;token=70788742-11f2-47b4-bfda-dbcc6664ece2" media="(prefers-color-scheme: dark)"><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FPApJ45zC3Xela34d2JnC%2Fkavita_moon_net_arrow.png?alt=media&#x26;token=8b288385-bf14-4baa-a591-cf4bd85d8636" alt="Arrow button highlighted." width="375"></picture><figcaption></figcaption></figure></div>

   &#x20;
5. In the upper-right corner, tap the three-dot icon and select **Add new catalog**.
6. Fill in the following details:
   * In the **Catalog name** field, enter a custom name for the Kavita library that will be displayed in the reader.
   * In the **Catalog URL** field, type in `http://`, paste the copied Nord name, and add `:5000/`.\
     &#x20;

     **Example**\
     `http://secret.meerkat-himalayas.nord:5000`\
     &#x20;
7. Tap **OK**.

   <div align="left"><figure><picture><source srcset="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FlACtfOrFCHcHdXes05qE%2Fkavita_moon_catalog_details_dark.png?alt=media&#x26;token=e5b8a346-33bb-4ee5-acf0-8f7251fe7e9e" media="(prefers-color-scheme: dark)"><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FxNVLOtbeAaGAAkZcEPNS%2Fkavita_moon_catalog_details.png?alt=media&#x26;token=854342da-d091-4449-bfdf-b94646b33b75" alt="&#x22;OK&#x22; button highlighted on the filled in Add new catalog dialog." width="375"></picture><figcaption></figcaption></figure></div>

Your Kavita library should now be visible on the **Net library** screen.

<div align="left"><figure><picture><source srcset="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FwC2yzKNKnuKr2055rwpX%2Fkavita_moon_added_dark.png?alt=media&#x26;token=ab55bda2-6558-422b-92ce-5e46c1991616" media="(prefers-color-scheme: dark)"><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2Ff4SoaTg2ZymYxAl4h3zS%2Fkavita_moon_added.png?alt=media&#x26;token=776461fe-e8ff-42f2-a41d-3ec821af138d" alt="Newly added Kavita library highlighted." width="375"></picture><figcaption></figcaption></figure></div>

### Method 2: Using an internet browser <a href="#method-2-using-an-internet-browser" id="method-2-using-an-internet-browser"></a>

To access your e-book library on the Kavita server from an internet browser:

1. Copy the Nord name of the device hosting the Kavita server.

   <div align="left"><figure><picture><source srcset="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FHUxsaWWlIe3i7o7erfzm%2Fkavita_nord_name_dark.png?alt=media&#x26;token=dc1c3854-5d9e-4dfd-976d-209ea9463964" media="(prefers-color-scheme: dark)"><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FVwZNin32fgOgohvipsU3%2Fkavita_nord_name.png?alt=media&#x26;token=3c8d9310-8687-4b6e-b30a-33a07c1feb7a" alt="Nord name copied from the Windows NordVPN app."></picture><figcaption></figcaption></figure></div>

   &#x20;
2. Open your internet browser.
3. In the URL field, paste the copied Nord name, add `:5000/`, and press **Enter**.\
   &#x20;\
   **Example**\
   `secret.meerkat-himalayas.nord:5000/`\
   &#x20;
4. Type in the username and password of the Kavita user account.
5. Click **Submit** to log in.

   <figure><picture><source srcset="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FDWbE9I7u2XcAMhKvHwoL%2Fkavita_web_login_dark.png?alt=media&#x26;token=20600917-7d88-40eb-bca5-6c0f3524e21d" media="(prefers-color-scheme: dark)"><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FwvmEoN3b4QK4sDHdB7IW%2Fkavita_web_login.png?alt=media&#x26;token=c046e3b3-a665-49b8-9e59-51df05fb4bfd" alt="&#x22;Submit&#x22; button highlighted on the Kavita login page."></picture><figcaption></figcaption></figure>

Now you can access your digital e-book library from the comfort of your internet browser.
