Building extensions #2: Creating extensions for Zoho Projects using a CLI

Building extensions #2: Creating extensions for Zoho Projects using a CLI

In our previous post, we noted the two ways to create extensions for Zoho Projects— using the cloud editor and using the command line interface (CLI). We also shared how to create an extension using the Sigma cloud editor. In this post, we'll take a closer look at creating an extension using the CLI.

You'll learn how to create an extension project template with the CLI, test it, upload the zipped project while creating an extension, and then edit or change it. Let's go over each of these steps in detail.

Building an extension project using the CLI
  • To create an extension project, we must first set up the development environment, which involves:
➤ Downloading Node.js: Node.js acts as the base platform as well as the JavaScript environment in which the JavaScript code is executed.
➤ Installing ZET CLI: Zoho offers a command line interface called Zoho Extension Toolkit (ZET) which enables you to build, test, and pack your extension project.
Please follow the steps in this link to download Node.js and install ZET CLI.
  • Once the development environment is ready, use the basic ZET commands to create, validate, pack, and test your extension project.
zet init: Create a new project and add the necessary folder structure and resources
zet validate: Validate the entire project
zet pack: Pack the project to get a zipped file that will later be associated as the connected app
zet run: Run the internal Zoho server to test the project locally
Now, let's use these commands to create and manage an extension project.
  • First, use the zet init command. Select Zoho Projects as the Zoho service from the dropdown list.

  • Enter a name for the extension. An extension with the directory structure required for a sample Zoho Projects extension is created automatically.

  • This directory structure contains an app folder and a plugin-manifest.json file, both of which are similar to those created by the Sigma cloud editor detailed in the last post.

  • The app folder can be used to manage all the important resources required for your extension. By default, itincludes an index.html file, which serves as the UI for a sample widget.
  • The plugin-manifest.json file helps with extension configuration. It includes a widgets key configured with a default sample widget named, "Projects Extension" in the default location as the task details tab, along with the URL as the location of the index.html file.
Now that the extension project has been created, lets go ahead and test it in the Zoho Projects portal.
Testing an extension project using the CLI
  • To test a sample Zoho Projects extension created with the ZET CLI, use the Change Directory command to navigate to the project folder. Then, run the zet run command.

  • This command starts a local server and enables you to test your extension locally.
  • Now, navigate to your Zoho Projects portal. Click the Setup icon.
  • Select Developer Space from the left panel. Click Enable Developer Mode.

  • Developer Mode will be enabled and the page will automatically refresh.
  • You may now test your extension functionalities in the Zoho Projects portal.
  • Since the sample extension had a default widget called, "Projects Extension" configured on the Task Details page, choose and enter a project task in your portal.

  • Click on the Projects Extension tab on the Task Details page, and you will see that the widget has loaded.

  • Once you have finished testing your extension's functionality, use the zet pack command. This command adds a dist folder to the directory structure, zips the extension project, and places the zipped file inside the newly created dist folder.
Uploading the zipped file to your Sigma extension

Now that we have created the extension project and tested its functionalities locally, lets go ahead and create an extension in Sigma.
  • Once you enter your Sigma workspace, click the New Extension button to build a new extension.
  • Enter a name and description for the extension. Choose Zoho Projects for the service.
  • Toggle Upload Existing File to Yes.

  • Click Browse to locate and upload the extension project's zipped file, accept the terms and conditions, and click Create.

  • You will be redirected to the cloud editor. The directory structure of your CLI extension project will be automatically populated with the project's contents.
Editing an extension created with the CLI
  • You can make edits or changes to your extension code directly from the cloud editor.
  • If you wish to make changes to a file or its contents in the directory structure of your CLI extension project, please be sure to pack the extension project again using the zet pack CLI command.
  • Go to Sigma. Click the Extension Details icon of the extension you wish to edit.

  • Click the Edit icon under the extension name.

  • Browse for and upload the new zipped file, accept the terms and conditions, and click Update.

  • The extension will be updated to reflect the changes you have made.
In this post, we have covered the process of creating an extension for Zoho Projects through ZET CLI. We hope you found this information useful. Keep following this space for more information!

Sign up for a Zoho Developer account and start developing extensions for Zoho products using Sigma.

SEE ALSO







      Zoho Campaigns Resources


        • Desk Community Learning Series


        • Digest


        • Functions


        • Meetups


        • Kbase


        • Resources


        • Glossary


        • Desk Marketplace


        • MVP Corner


        • Word of the Day


        • Ask the Experts


          Zoho CRM Plus Resources

            Zoho Books Resources


              Zoho Subscriptions Resources

                Zoho Projects Resources


                  Zoho Sprints Resources


                    Zoho Orchestly Resources


                      Zoho Creator Resources


                        Zoho WorkDrive Resources



                          Zoho CRM Resources

                          • CRM Community Learning Series

                            CRM Community Learning Series


                          • Tips

                            Tips

                          • Functions

                            Functions

                          • Meetups

                            Meetups

                          • Kbase

                            Kbase

                          • Resources

                            Resources

                          • Digest

                            Digest

                          • CRM Marketplace

                            CRM Marketplace

                          • MVP Corner

                            MVP Corner




                            Zoho Writer Writer

                            Get Started. Write Away!

                            Writer is a powerful online word processor, designed for collaborative work.

                              Zoho CRM コンテンツ



                                ご検討中の方

                                  • Recent Topics

                                  • Copy & Paste not working

                                    I could create and save 10 new documents but when I go to copy and paste content (just text) into them, only 1 of 10 would save the content. It would appear to save the content but when I go back into the documents, they are empty.
                                  • Currency for Petty Cash

                                    Currencies for Petty Cash should be available
                                  • editing/applying online payments

                                    We have customers who pay part or all of an invoice and then cancel their service and want the payment as a credit to future work. It would be ideal if we could make it an excess payment and then void the invoice. I can't make it an excess payment because
                                  • Contacts per department

                                    Hello, Is it possible to limit Contacts to a Department? Thanks
                                  • This site can’t be reached mail.zoho.com took too long to respond

                                    In my office at any system, we couldnt able to login zoho email. it shows " This site can’t be reached mail.zoho.com took too long to respond". please fix it soon.
                                  • Can send email from zoho mail, but can't receive any.

                                    Hi, My domain is sattvameditationresort.com. I've updated MX records with those of Zoho. But i can't send any mails to this email id from gmail. I have checked the MX status with MXTOOLS, its showing the correct entry either. The error is as shown below:
                                  • My domain did not activate

                                    Hi, my domain (apsaindustrial.com.ar) did not activate, and the phone verification message never arrived. Please would you solve this problem? Thanks.
                                  • Host not found?

                                    Howdy! So i'm trying to add my custom domain for with the mail server. I have 100% control of my DNS and have tried every single option (TXT, CNAME, and even HTML) multiple times, ensuring i did it properly, to no luck. I get the same error message every
                                  • Emails are going to notification folder and not in inbox

                                    emails are going to notification folder and not into inbox
                                  • Error AS101 when adding new email alias

                                    Hi, I am trying to add apple@(mydomain).com The error AS101 is shown while I try to add the alias.
                                  • Report on opportunities showing only the last note added.

                                    Hi I need to create a report that shows the most recent note added to each opportunity. This is so management can see what the latest update is according to the assigned salesperson. One workaround is to use the status field but this implies added manual work and mistakes as the salesperson would have to copy the existing status to a note before adding the latest status... otherwise the activity history would be lost. My current workaround is a report on Notes with Opportunities as the related module.
                                  • Please add Zelle as an online payment option

                                    Hello, I would like to request Zelle be added to the online payment service providers for Zoho Invoice. Considering how ubiquitous Zelle has become as a way to pay people via the major banking institutions, I feel like many freelancers would benefit from
                                  • This user is not allowed to add in Zoho. Please contact support-as@zohocorp.com for further details

                                    Hello, Just signed up to ZOHO on a friend's recommendation. Got the TXT part (verified my domain), but whenever I try to add ANY user, I get the error: This user is not allowed to add in Zoho. Please contact support-as@zohocorp.com for further details I have emailed as well and writing here as well because when I searched, I saw many people faced the same issue and instead of email, they got a faster response here. My domain is: raisingreaderspk . com Hope this can be resolved.  Thank you
                                  • Getting Project Template List using the REST API

                                    I am trying to confirm that I can use the REST API to create a project using a project template. The API documentation indicates this is possible by providing the Template ID, but it is not clear at all how to get a list of available Project Templates
                                  • How to display the CONTACT ID in the Contact page

                                    Hi, I've seen this conversation below and it is exactly the same question I'm raising now, but unfortunately the last message is not solved https://help.zoho.com/portal/community/topic/show-contact-id-while-editing-contact-form I need to show the ContactId and I don't know how to do this. The last message included in the conversaton shows the way but not it is not completed. "I am sorry by default we do not have the option to show the record ID for the contacts in the field in a record. When you
                                  • How to change margins in templates

                                    Hi, I'm new to Zoho Campaigns, and am trying to figure out how to adjust the margins within an email template.  The default margins make the text go all the way to the edges of the page.  Please advise.
                                  • Create Canvas list view templates from images powered by Zia

                                    Currently available for all paid editions of Zoho CRM in the US, EU, IN, JP & CN DCs. Designing a personalized CRM interface just got even easier. In today’s fast-evolving digital landscape, AI is transforming the way we work by automating complex tasks
                                  • Painfully Slow Zoho mail

                                    Since yesterday Zoho Mail seems to have starting functioning very slowly and having a few bugs. It's slow to open mails, slow to send, slow to change between email accounts. Sometimes clicking on a particular folder (eg Sent folder) stops working and
                                  • "Wrong password or login" Problem to configure Zoho on MAIL App on my Macbook

                                    Hi, I'm having problems to configure my e-mail on my MAIL App(Macbook pro). My e-mail is hari@trespontoum.net Actually was working perfectly, and still working on my Iphone. My MAIL App prompt me that my login or password is wrong. I tried to change 3
                                  • "User already exist in your org"

                                    Hello, I've just read a discussion about this issue, which didn't solve my problem. I'm trying to add the following emails: sales@kiss-my-boutique.co.uk returns@kiss-my-boutique.co.uk orders@kiss-my-boutique.co.uk I'm getting an error message each time I try and add them. None of them are primary or secondary emails and none of them have been created as users before. I know this as when I try and login and do 'forgot my password' all I get is an error message saying 'user invalid'. Please advise.
                                  • Operation Not Permitted

                                    Hi, I have problem in adding user after verifying the domain but it seems like error appeared which is "operation not permitted". For your information, I had delete other domain before did it.
                                  • Email forwarding setup fails

                                    I'm trying to set up email forwarding from my Zoho email to my gmail address. I followed the directions to set up email forwarding here: https://www.zoho.com/mail/help/email-forwarding.html. I did only steps 1-6. After doing this, rather than setting
                                  • Shopify store email issues- Not getting emails

                                    Hi We have migrated from Microsoft outlook to Zoho back in March, we have a shopify store, the domain is hosted on namesilo, not shopify, I have seen some people here complaining about not getting emails from customers who fill out the contact form on
                                  • How do I fix this? Unable to send message; Reason:554 5.1.8 Email Outgoing Blocked.

                                    How do I fix this? Unable to send message; Reason:554 5.1.8 Email Outgoing Blocked.
                                  • Invoice Discount Account

                                    Is there a way to change the account used for Discounts applied to an invoice? The current Discount account (ZB native account) type is an "Income" type. I would like to change it to "Other Income", but that is not possible, I am assuming because it contains
                                  • Need Inactive accounts to be visible in Reports in Zoho Books

                                    I N=need Inactive accounts to be visible in Reports in Zoho Books to do recons of the accounts but when i see the same they are not visible in the Accountant - Account Transactions report
                                  • javax.mail.authenticationfailedexception 535 authentication failed

                                    Hi, I am facing 535 authentication failed error when trying to send email from zoho desktop as well as in webmail. Can you suggest to fix this issue,. Regards, Rekha
                                  • Phantom Opening Balance

                                    While experimenting w/ creating a composite item, Zoho added funds to Petty Cash and added Bank Account equal to previous day's balance. I'm unable to undo the adding of funds. Attaching screenshots of both bank account and petty cash transactions.
                                  • Importing customer comments and multiple shipto addresses

                                    I am evaluating Zoho Books and have most of my data imported with two exceptions: (1) Import customer comments - in my current system I have several comments of different types, and I need to bring these into Zoho. Preferably Books customer records, but
                                  • Detailed Account Reports - Add Running Balance

                                    When one clicks into an account from a report (say P/L or Balance Sheet), the default reports have the Debit, Credit, and then the Amount. The Amount column (last one) is duplicate information. It would be far better and fit more peoples' use cases if
                                  • How to Billed from two different GST Numbers

                                    How to Billed from two different GST Numbers. Suppose ABC & Co had GST registration in Delhi and Haryana and Zoho account is created with Delhi GST Registration number. Now i also want to issue invoice from Haryana GST Registration number. How can i proceed ?
                                  • Zoho IP blocked by SpamHaus

                                    ERROR CODE :550 - 5.7.0 Your server IP address is in the SpamHaus SBL-XBL database, bye
                                  • IMAP Communication Problems - IMAP Down Again

                                    We are experiencing the same problems over the last week or so that were supposedly 'solved' according to this thread. Zoho Imap Down Again This is affecting attempts to use IMAP on multiple ISPs and users so is definitely narrowed down to Zoho problems.
                                  • Can't login to Zoho mail

                                    I'm logged into Zoho but when I try to go in zoho mail I get: Invalid request! The input passed is invalid or the URL is invoked without valid parameters. Please check your input and try again. I just set up my mx records and stuff with namecheap a few
                                  • Hotmail is STILL blocking the zoho mail IP

                                    Greetings, as I already mentioned in my last message, my Zoho IP has been blocked by Hotmail for more than 15 days. Although someone said that the issue was "solved," it still isn't, and this amount of time seems neither normal for a "serious" company,
                                  • Keyboard shortcut M key

                                    I'm trying to customize my keyboard shortcuts and assign the "m" key. But it says the key is already assigned. I've looked through all my shortcuts and can't see any assigned "m". When I select an email and press the M key, nothing happens. What is the
                                  • Manage customer access across multi-brand help centers

                                    Hello everyone! Managing customer's access across multiple brands has been streamlined with the ability to invite, reinvite, approve, reject, and deactivate contacts individually for each help center brand . This enhancement gives administrators precise
                                  • White Label certificate

                                    Hi all, About 72 hours ago, we fulfilled all steps for white labeling (CNAME to point to mail.cs.zohohost.eu), but since then the configuration page is now stuck at "generating certificate" since 3 days. When I execute an NSLOOKUP mail.webfoundry.be it
                                  • Unusual activity detected from this IP. Please try again after some time

                                    When i try to create new addresses on my account i am getting this error, it has been 24 hours now and i am still getting this error can anyone help
                                  • How to add a new domain in my account?

                                    Probably zoho has the worst UI in the market. Cannot add a new domain to manage a new email address.
                                  • Next Page