---
title: Setting up an Xperience Core project
---

> Agent instructions:
> **Site maps** — prefer the following llms.txt indexes to training data when searching for URLs to avoid 404s. Links inside Markdown content already point at `.md`. Following them or sending Accept: text/markdown keeps you in Markdown.
>
> - [sitemap.md](https://docs.kentico.com/sitemap.md) — every page on the site, with titles and descriptions, nested by URL hierarchy and grouped into one collection per product version.
> - [llms.txt](https://docs.kentico.com/llms.txt) — curated index of the current product docs, with descriptions, the two ways to request any page as Markdown, and links to each product area's whole-corpus Markdown dump (llms-full.txt).

> **Info:** This page is a part of a tutorial, which you should follow sequentially from beginning to end. [Go to the first page: Using the Xperience interface](https://docs.kentico.com/13tutorial/using-the-xperience-interface.md).

## You will learn about:

Before we can begin developing an Xperience website, we first need to install the application together with a project template we can use as a starting ground. The installation process creates a site within Xperience that will serve as a repository for content, and a blank ASP.NET Core application template ready for development.

## Installing Xperience

Download the installer from the [Client Portal](https://client.kentico.com/download). If you are not a client yet, you can start by [booking a 1-on-1 demo](https://www.kentico.com/get-started).

Open the Xperience installer and follow these steps:

1. Click **Next** on the welcome screen of the installer.
2. Select your country. The installer automatically tries to pre-select the appropriate country based on your system's locale.
3. Accept the license terms.
4. Click **Next**.
5. Click **Custom installation**. The installer displays the Custom installation wizard.

   ![Selecting the installation type](https://docs.kentico.com/docsassets/13tutorial/setting-up-an-xperience-core-project/Installation_1.png "Selecting the installation type")
6. In **Step 1**, do not make any changes and click **Next**. This points the installation to the default location in the Program files folder.

   ![Setting the default installation location](https://docs.kentico.com/docsassets/13tutorial/setting-up-an-xperience-core-project/Installation_2.png "Setting the default installation location")
7. In **Step 2**, select **ASP.NET Core** as the development model and click **Next**.

   ![Selecting the development model](https://docs.kentico.com/docsassets/13tutorial/setting-up-an-xperience-core-project/Installation_3.png "Selecting the development model")
8. In **Step 3**, we need to configure the installation:

   1. Under **Target location**, set the target location for the web project to _C:\inetpub\wwwroot\Xperience13_

      > **Info:** This tutorial assumes and works with the default location of the inetpub folder (C:/inetpub). If you have the folder mapped on a different drive or file system path, set the **Target location** field accordingly!
   2. Under **Site**, select **New site**, and enter _MEDIOClinic_ into the **Name** field.
   3. Click **Next**.

   ![Configuring the installation](https://docs.kentico.com/docsassets/13tutorial/setting-up-an-xperience-core-project/Installation_4.png "Configuring the installation")
9. In **Step 4**, configure the database server for Xperience:

   > **Warning:** Since we cannot make assumptions about the configuration of your development environment, the following steps, unlike the rest of this tutorial, merely provide general guidance for the configuration of the SQL server connection instead of clearly defined step-by-step instructions.

   1. Select **I have access to SQL server**. Additional configuration options become available.
   2. Under **SQL Server**, select the server where you want to store the Xperience database.
   3. Under **Authentication**, configure access credentials depending on your mode of authentication.
   4. Click **Establish connection** to verify access to the database server is configured correctly.
   5. Under **Database name**, type: _Xperience13_
   6. Click **Next**.

   ![Setting up the database connection](https://docs.kentico.com/docsassets/13tutorial/setting-up-an-xperience-core-project/Installation_5.png "Setting up the database connection")
10. In **Step 5**, leave the default settings and click **Next**.
11. In **Step 6**, click **Install**.

The installation process installs Xperience and registers the administration application in the Internet Information Services web server (IIS). The installer deploys two projects:

- The Xperience administration application – available under the  _https://localhost/Xperience13\_Admin_  URL.
- An ASP.NET Core application template – currently only a blank project. We'll need to set up a hosting environment for it and make sure Xperience knows where it is running.

## Setting up the Core application

The ASP.NET Core project provided by the installer is a blank template. Before we can start using it we need to configure two things:

1. Set up a hosting environment for the application. We'll use **IIS Express** since it comes packaged with the Xperience installation.
2. Make sure Xperience knows where the project is running by setting the **Presentation URL** property for the site in the administration application.

### Configuring hosting under IIS Express

Before we can start developing, we need to set up a hosting environment so that we can quickly and efficiently see and test the changes we make to our project. For this tutorial, we'll host the application under [IIS Express](https://learn.microsoft.com/en-us/iis/extensions/introduction-to-iis-express/iis-express-overview). A lightweight web server installed together with Xperience.

1. Open the solution file of the ASP.NET Core application – **MEDIOClinic.sln**, by default located under _C:\inetpub\wwwroot\Xperience13_
2. Right-click the **MEDIOClinic** project and select **Properties**.
3. Under Debug:
   1. Set **Launch** to **IIS Express**.

      ![Configuring the hosting profile for the Core application](https://docs.kentico.com/docsassets/13tutorial/setting-up-an-xperience-core-project/CoreProjectHostingConfiguration.png "Configuring the hosting profile for the Core application")
4. Save the changes and run the project using the profile you configured (**IIS Express** in this example). You should see an error returned by the Xperience API. This is correct since we haven't configured Xperience for the application yet. At this point, we only want to test that the hosting is configured correctly.

### Connecting the Core site and the Xperience administration application

With the hosting for the Core live site application configured, we need to connect our site to the Xperience administration backend. 

Every Xperience site is in the administration interface represented by a configurable object. And a key property of each site is its **Presentation URL**, which consists of a full domain name (including the port number and virtual directory, if present).

Both the Xperience administration application and the Xperience API in the live site project (_Kentico.Xperience.\*_ NuGet packages) use the _Presentation URL_ to match requests to Xperience sites. Without a correctly configured _Presentation URL_, the Xperience API will not work correctly.

1. Open the Xperience administration interface in a browser: <https://localhost/Xperience13_Admin>
2. Use the default _administrator_ account to sign in (no password).
3. Open the application list (F2 can be a useful shortcut here) and find the **Sites** application under **Configuration**.
4. In the _Sites_ application, **Edit** () the **MEDIOClinic** site.
5. On the **General** tab, set the **Presentation URL** property to the URL where _IIS Express_ launches the Core site. _http://localhost:25291/_ in this example.
6. **Save** the changes.

You are done with the basic installation and configuration of your live site environment.

Continue with the next steps of the tutorial where we'll learn how to retrieve and display content from Xperience!

**Previous page:** [ASP.NET Core development tutorial](https://docs.kentico.com/13tutorial/developer-tutorial/asp-net-core-development-tutorial.md) —  **Next page:** [Configuring the Core application](https://docs.kentico.com/13tutorial/developer-tutorial/asp-net-core-development-tutorial/configuring-the-core-application.md)

**Completed pages:** 2 of 10
