--- title: "Initialize the project" url: https://docs.catalyst.zoho.com/en/tutorials/githubbot/python/initialize-project/ description: "Build an extension on Zoho Cliq using Catalyst Integration Functions, that enables you to access and work with your GitHub repositories using a Cliq bot" last_updated: 2026-08-17T12:16:04Z 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 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/). 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 preferred portal (or organization) by navigating using the arrow keys and press **Enter** to confirm. If you have no other organizations associated with the account, then the default one will be selected automatically. ![select_portal](https://catalyst-docs-development.zohostratus.in/images/tutorials/githubbot/python/select_portal_updated.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 **GitHubBot** from the list and press **Enter**. ![select_default_project](https://catalyst-docs-development.zohostratus.in/images/tutorials/githubbot/python/select_default_project.webp) 5. Select **Functions** using the space bar. Press the **Enter** key to initialize. ![select_components](https://catalyst-docs-development.zohostratus.in/images/tutorials/githubbot/python/select_components_updated.webp) 6. The CLI will initiate the function setup. Select Integration as the function type. ![function_type](https://catalyst-docs-development.zohostratus.in/images/tutorials/githubbot/python/function_type.webp) 7. Select **Cliq** as the service and press Enter. ![select_service](https://catalyst-docs-development.zohostratus.in/images/tutorials/githubbot/python/select_service.webp) 8. All Cliq handlers classes will be selected by default. Press **Enter**. ![select_handlers](https://catalyst-docs-development.zohostratus.in/images/tutorials/githubbot/python/select_handlers.webp) 9. Select **Python 3.10** as the function stack, and press **Enter**. ![select_python_runtime](https://catalyst-docs-development.zohostratus.in/images/tutorials/githubbot/python/select_python_runtime.webp) 10. Press **Enter** to confirm the default package name as `git_hub_bot_function` and the entry point as `main.py`. ![function_setup](https://catalyst-docs-development.zohostratus.in/images/tutorials/githubbot/python/function_setup.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 and file name exactly as instructed, because the application's code contains the same names. The functions directory is now created in the standard structure. Catalyst initialization is complete. Your project directory is now set up with 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)`, a [requirements.txt file](https://docs.catalyst.zoho.com/en/cli/v1/project-directory-structure/functions-directory/#requirementstxt-file) and a hidden `.catalystrc` file. This will be the final structure of your project directory. ![functions_directory](https://catalyst-docs-development.zohostratus.in/images/tutorials/githubbot/python/function_directory.webp)