--- title: "Initialize the project" url: https://docs.catalyst.zoho.com/en/tutorials/leadmanager/python/initialize-project/ description: "Build a Lead Manager application that connects to your Zoho CRM account using Catalyst connector to view, create, update, or delete leads." last_updated: 2026-11-04T10:10:44Z 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 from the CLI We have now configured all the necessary components from the console. Next, we’ll be working on coding the application from our local system 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, where all of your project files are saved. 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/initialize-resources/introduction/). For the Lead Manager application, we will initialize the Advanced I/O function in the Java or Node.js environment, and the client component. 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 ``` 3. Select the [portal](https://docs.catalyst.zoho.com/en/getting-started/catalyst-organizations/#access-the-multi-org-portal) (or organization) that you created your project in by navigating using the arrow keys and press **Enter** to confirm. ![select-org](https://catalyst-docs-development.zohostratus.in/images/tutorials/leadmanager/python/select-org.webp) 4. Now, CLI will ask you to associate a Catalyst project with the directory. Associate it with the project that we created earlier from the console. Select **LeadManager** from the list and press **Enter**. ![select-proj](https://catalyst-docs-development.zohostratus.in/images/tutorials/leadmanager/python/select-proj.webp) 5. Select **Functions** and **Client** using the space bar. Press the **Enter** key to initialize. ![select-comp](https://catalyst-docs-development.zohostratus.in/images/tutorials/leadmanager/python/select-comp.webp) 6. The CLI will initiate the function setup. Select **AdvancedIO** as the function type. ![function-setup](https://catalyst-docs-development.zohostratus.in/images/tutorials/leadmanager/python/function-setup.webp) 7. Select the latest runtime of **Python** as the function stack, and press **Enter.** ![select-python](https://catalyst-docs-development.zohostratus.in/images/tutorials/leadmanager/python/select-python.webp) 8. Press **Enter** to confirm the default package name as `lead_manager_function` and the entry point as `main.py`. ![functions-setup2](https://catalyst-docs-development.zohostratus.in/images/tutorials/leadmanager/python/functions-setup2.webp) The CLI will download and install the latest [Catalyst Python SDK](https://docs.catalyst.zoho.com/en/sdk/python/v1/overview) package. > **Note:** Ensure that you enter the package name, or class name and folder name, exactly as instructed, because the application's code contains the same names. 9. The CLI will initiate the client set up next. Choose **Basic web app.** ![basic-webapp](https://catalyst-docs-development.zohostratus.in/images/tutorials/leadmanager/python/basic-webapp.webp) 10. Provide the name of the client as **"LeadManagerApp"**. ![done-client-setup](https://catalyst-docs-development.zohostratus.in/images/tutorials/leadmanager/python/done-client-setup.webp) > **Note:** You can enter any name you need. However, you can use the same name that you used while enabling Zoho sign-in to maintain standardization. The functions and client directory is now created in the standard structure. Catalyst initialization is now complete. Your project directory (CATALYST_PROJECT_HOME) is now set up with the [client directory](https://docs.catalyst.zoho.com/en/cli/v1/project-directory-structure/client-directory) (CATALYST\_CLIENT\_HOME) and the [functions directory](https://docs.catalyst.zoho.com/en/cli/v1/project-directory-structure/functions-directory) (CATALYST\_FUNCTIONS\_HOME) 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, a [requirements.txt](https://docs.catalyst.zoho.com/en/cli/v1/project-directory-structure/functions-directory/#requirementstxt-file) file and a hidden .catalystrc file. ![directory](https://catalyst-docs-development.zohostratus.in/images/tutorials/leadmanager/python/directory.webp) > **Note:** The above image includes an additional file `login.html`. This is the final directory structure of your project. We will create `login.html` while configuring the client directory.