# Step 1: Create and config custom app

When developing a web app on the Feishu Open Platform, you need to create a custom app first and add the web app capability.

## Procedure

1. Log in to [Developer Console](https://open.feishu.cn/app).

2. On the homepage of the developer background, click **Create custom app**, fill in the application name, description and icon information, and click **Create**.

![](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/a56759d1370c0b77869ab8a1d2813cb5_2qRgIerFRN.png?height=1450&lazyload=true&maxWidth=600&width=2450)

3. On the application details page, go to **Features** > **Add Features** page.

4. Add **Web app** capability.

![](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/44917d31e384072ea4ba73260bd5b71f_6CJSreFCba.png?height=982&lazyload=true&maxWidth=600&width=2354)

5. (Optional) Go to the **Features** > **Web app** page, and configure the URL of the homepage of the web app.

- If you have developed a web app and obtained the public access address of the program, you can directly configure it here.

- If you have not developed a web app, you do not need to fill in the address in the current step. You can refer to the sample operation provided by the guide ([Step 2 (optional): call JSAPI for authentication](https://open.feishu.cn/document/uYjL24iN/uEzM4YjLxMDO24SMzgjN),[ Step 3 (optional): Application free login process](https://open.feishu.cn/document/uYjL24iN/uMTMuMTMuMTM/development-guide/step-3)) After completing the development of the application, return here to fill in the corresponding access address of the program.
    - In the actual production environment, the address configured here needs to be a public network address. In the development and debugging phase, you can use the reverse proxy tool ngrok to obtain it. For the usage, see [Configure event subscription](https://open.feishu.cn/document/home/develop-a-bot-in-5-minutes/step-5-configure-event-subscription) in steps 1~3.

- If the company's network security policy does not allow the use of reverse proxy tools, or if you want to quickly experience the access process, you can temporarily use the local environment to debug and fill in `http://127.0.0.1:3000`.

![image.png](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/ed12a5a5c48188b2bae232e111614b37_mZ8cfyFw53.png?height=1302&lazyload=true&maxWidth=600&width=2396)

6. (Optional) Configure the way how new pages open after opening the desktop home page within Feishu client.

- In versions below Feishu V7.4, the web application home page will be opened within Feishu by default. New pages will be opened in the browser when redirected via `window.open` or `<a target="_blank">`.
	- In versions V7.4 and above, the web application home page will still open within Feishu by default. You can choose whether new pages opened via `window.open` or `<a target="_blank">` will be opened **New tab in Feishu** or **New tab in browser**.warning
   		**Note**: The desktop home page is opened within the Feishu client by default. If you need to configure the home page to open in the browser, you must append the `lk_jump_to_browser=true` parameter to the URL. For more details, refer to [Configure Webpage to Open in Browser](https://open.feishu.cn/document/uYjL24iN/uMTMuMTMuMTM/web-app-open-ability/configure-webpage-to-open-in-browser). If you have configured the home page to open in the browser, you can only choose **New tab in browser** in this step.

![image.png](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/fa32c82cc09b82e0139611a5b16a9a04_AhMBtUurWS.png?height=628&lazyload=true&maxWidth=600&width=1640)

- If you choose **New tab in Feishu**, the web application will display certain characteristics in this scenario:
    		- To differentiate between different tabs opened by the same application, the name displayed in the tabs will be the name defined by the web page itself instead of the application name.
    		- If the user pins a tab of the web application to the main navigation, the next time they reopen it, they will enter **the page corresponding to the tab link** directly, instead of starting from the web application's home page. You need to handle compatibility for this scenario (e.g., ensuring any subpage validates user login and web page authentication independently).

- If you choose **New tab in browser**, the web application will behave consistently with versions below Feishu V7.4, meaning:
    		- The name displayed in the tab will be the web application's name.
    		- If the user pins the tab to the main navigation, the next time they reopen it, they will re-enter **the home page of the web application**. If the home page of the web application has changed, they will enter the new home page.

## FAQs

This section mainly covers common questions related to the method of opening the desktop homepage.

### What is the impact of configuring the desktop homepage opening method?

1. Web applications via `window.open` or `<a target="_blank">` to jump to a new page are affected by this opening method, and are not controlled by this opening method when jumping to a new page via the [openSchema API](https://open.feishu.cn/document/uYjL24iN/ukzN4IjL5cDOy4SO3gjM).

2. If the web application uses `window.open` or `<a target="_blank">` method to [open a web page Applink](https://open.feishu.cn/document/uAjLw4CM/uYjL24iN/applink-protocol/supported-protocol/open-the-web-view-in-feishu-to-access-the-specified-url), it will open this web page inside Feishu, and the new page jumped to in this web page will no longer be controlled by the web application's opening method. Instead, it is consistent with the opening method used in the Feishu conversation to open this link.

3. The current opening method does **NOT** affect the way a web application opens **in a separate window** in Feishu. `window.open` or `<a target="_blank">` still jumps to open the browser. 

### How will the page be opened if the configured authentication result in the new page opened by a web app points to another app?

If web app A opens a new page and its [authentication](https://open.feishu.cn/document/uYjL24iN/uEzM4YjLxMDO24SMzgjN) result points to app B, the page will be opened either in the browser or within Feishu depending on the settings of app B, no longer controlled by app A.

### After configuring the desktop homepage opening method, the app homepage still opens within Feishu. How can I configure it to directly open in the browser?

In Feishu version 7.7 and above, you can go to the [Developer Console](https://open.feishu.cn/app) > App Details > **Web app** configuration page. After the URL configured in **Desktop homepage**, append the parameter `lk_jump_to_browser=true`, and the web app homepage will directly open in the browser. URL example: `https://open.feishu.cn/?lk_jump_to_browser=true`

For details, refer to [Configuring webpages to open in browser](https://open.feishu.cn/document/uYjL24iN/uMTMuMTMuMTM/web-app-open-ability/configure-webpage-to-open-in-browser).