--- title: "Initialize the project" url: https://docs.catalyst.zoho.com/en/tutorials/workdrivesync/java/initialize-project/ description: "Build a web application that synchronizes file uploads and deletions between two folders in the Catalyst Stratus and Zoho WorkDrive through APIs, using Catalyst functions and Event Listener" 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, 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 WorkDrive Sync app, we will initialize an Event function in the Java or Node.js environment, and the client component. You can later add an Advanced I/O function in the directory after initializing the project with these resources. 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. 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 **WorkDriveSync** from the list and click Enter. ![catalyst_workdrive_init_1](https://catalyst-docs-development.zohostratus.in/images/tutorials/workdrivesync/catalyst-init-workdrivesync.webp) 4. Select **Functions** and **Client** using the space bar. Press the Enter key to initialize. ![catalyst_workdrive_init_2](https://catalyst-docs-development.zohostratus.in/images/tutorials/workdrivesync/functions-client-initialize.webp) 5. The CLI will initiate the function setup. Select **Event** as the function type. ![catalyst_workdrive_init_3](https://catalyst-docs-development.zohostratus.in/images/tutorials/workdrivesync/catalyst_workdrive_init_3.webp) 6. Select the latest runtime of Java as the function stack, and press **Enter**. ![catalyst_workdrive_init_4](https://catalyst-docs-development.zohostratus.in/images/tutorials/workdrivesync/runtime-workdrive-sync-app.webp) 7. Enter "**WorkDrive**" as the folder name and "**WorkDriveSync**" as the class name. Press **Enter** each time. ![](https://catalyst-docs-development.zohostratus.in/images/tutorials/workdrivesync/java-console-initialize-workdrive-sync.webp) The CLI will download and install the latest [Catalyst Java SDK](https://docs.catalyst.zoho.com/en/sdk/java/v1/overview) package on your local system. > **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. 8. The CLI will now begin the client setup process. From the available options, select **Basic web app** and press **Enter**. ![catalyst_workdrive_init_7](https://catalyst-docs-development.zohostratus.in/images/tutorials/workdrivesync/basic-web-app-workdrive-synca-app.webp) 9. When prompted, specify **WorkDriveSyncApp** as the client package name, then press **Enter** to finalize the client setup. ![catalyst_workdrive_init_7](https://catalyst-docs-development.zohostratus.in/images/tutorials/workdrivesync/client-initialize-complete-workdrive-sync.webp) 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 client directory will be created in the standard structure. Catalyst initialization is now complete. Your project directory 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 and a hidden `.catalystrc` file. This is the structure of your project directory. ![catalyst_workdrive_proj_dir_struct_java](https://catalyst-docs-development.zohostratus.in/images/tutorials/workdrivesync/project-directory-structure-workdrive-sync-app.webp)