--- title: "Initialize the Project" url: https://docs.catalyst.zoho.com/en/tutorials/third-party-auth/nodejs/init-project/ description: "Integrate Auth0 SPA authentication service with basic web applications hosted on Catalyst using OpenID Connect and 0Auth2.0 authentication protocols." last_updated: 2026-11-03T15:19:21Z service: All Services type: tutorial related_links: - name: "Initialize CLI Resources" url: /en/cli/v1/initialize-resources/introduction - name: "Project Directory Structure" url: /en/cli/v1/project-directory-structure/introduction --- # Initialize the Project You can now begin working on your Catalyst project from the CLI. The first step is to initialize the project in an empty directory. This will be the home directory of your project, and all of the project files will be saved in it. You can learn more about this from the [Project Directory Structure help page](https://docs.catalyst.zoho.com/en/cli/v1/project-directory-structure/introduction/). You can learn about initializing a project in detail from the [CLI help documentation](https://docs.catalyst.zoho.com/en/cli/v1/cli-command-reference/). For this application, we will only be initializing the project. We will not be initializing any function or client components. 1. Create a folder for the project on your local machine and navigate to it from the terminal. 2. Initialize a project by executing the following command from that directory: ```sh catalyst init ``` Navigate using the **arrow keys** and select your preferred portal and click **Enter**. If you have no other organizations associated with the account, then the default will be selected automatically. > **Info:** [Learn more about Catalyst's multi-org portal feature](https://docs.catalyst.zoho.com/en/getting-started/catalyst-organizations/#access-the-multi-org-portal). 3. The CLI will now ask you to associate a Catalyst project with the directory. Associate it with the project that we created earlier from the console. Select **Authentication360** from the list and click **Enter**. ![catalyst_tutorials_third_party_cli_init_proj](https://catalyst-docs-development.zohostratus.in/images/tutorials/third-party-auth/catalyst_tutorials_third_party_cli_init_proj.webp) 4. Select **Functions** and **Client** using the space-bar and press **Enter** to initialize the function and client components of your application. ![catalyst_tutorials_third_party_cli_sel_func_client](https://catalyst-docs-development.zohostratus.in/images/tutorials/third-party-auth/catalyst_tutorials_third_party_cli_sel_func_client.webp) 5. The CLI will initiate the function setup. Select **AdvancedIO** function as the function type to code your authentication logic. ![catalyst_tutorials_third_party_func_sel_advio](https://catalyst-docs-development.zohostratus.in/images/tutorials/third-party-auth/catalyst_tutorials_third_party_func_sel_advio.webp) 6. Select the latest runtime of *Node.js* as the function stack. ![catalyst_tutorials_third_party_sel_node_runtime](https://catalyst-docs-development.zohostratus.in/images/tutorials/third-party-auth/catalyst_tutorials_third_party_sel_node_runtime.webp) 7. Enter "`custom_token_generation`" as the package name, "`index.js`" as the entry point, and your email address as the author, then press **Enter**. Alternatively, you can press **Enter** without entering inputs to fill in the default values. The CLI will prompt the initialization of the Node dependencies. Press **Y** to confirm the installation, and press **Enter** to confirm your choice. The Node modules will be installed. ![catalyst_tutorials_third_party_func_cmpltd](https://catalyst-docs-development.zohostratus.in/images/tutorials/third-party-auth/catalyst_tutorials_third_party_func_cmpltd.webp) The CLI will now initiate the client setup. 8. Select **Basic web app** and press **Enter** to initialize your client as a [basic web app](https://docs.catalyst.zoho.com/en/cli/v1/initialize-resources/initialize-client/#basic-client-applications). ![catalyst_tutorials_third_party_sel_client_basic](https://catalyst-docs-development.zohostratus.in/images/tutorials/third-party-auth/catalyst_tutorials_third_party_sel_client_basic.webp) 9. Enter a name for your client package and press **Enter**. For the purposes of this tutorial, we are naming our client package “`Authentication360`”. You can use the same of provide a name of your choice. ![catalyst_tutorials_third_party_sel_client_basic_cmpltd](https://catalyst-docs-development.zohostratus.in/images/tutorials/third-party-auth/catalyst_tutorials_third_party_sel_client_basic_cmpltd.webp) The Catalyst initialization is now complete. The project directory is now set up with the client directory and the functions directory along with configuration files and dependencies. The project directory also contains the [`catalyst.json`](https://docs.catalyst.zoho.com/en/cli/v1/project-directory-structure/catalyst-json/) configuration file and a hidden `.catalystrc` file. The structure of your project directory should now appear as shown below: ![catalyst_tutorials_third_party_app_dir](https://catalyst-docs-development.zohostratus.in/images/tutorials/third-party-auth/catalyst_tutorials_third_party_app_dir.webp) ### Deploy Your Application You will need to deploy the application to the Catalyst console to fetch the application URL. This URL is required to enable and Auth0 authentication service. To [deploy the application](https://docs.catalyst.zoho.com/en/cli/v1/deploy-resources/introduction/) from the CLI: Run the following command in your terminal from your project directory: ```sh catalyst deploy ``` The function is deployed first, followed by the client component. The URL endpoints of the components will be displayed in the CLI: ![catalyst_tutorials_third_party_deploy_1](https://catalyst-docs-development.zohostratus.in/images/tutorials/third-party-auth/catalyst_tutorials_third_party_deploy_1.webp) > **Note:** You can also use the `catalyst deploy –only client` CLI command to deploy the client component alone, as the function component is not required to enable Auth0 service. You can get the application URL at any point by navigating to the [Web Client Hosting](https://docs.catalyst.zoho.com/en/cloud-scale/help/web-client-hosting/) component. ![catalyst_tutorials_third_party_auth0_webclienthost](https://catalyst-docs-development.zohostratus.in/images/tutorials/third-party-auth/catalyst_tutorials_third_party_auth0_webclienthost.webp) We can now enable *Auth0* authentication service for your Catalyst application.