This tutorial enables developers to onboard with the latest app development experience for Freshworks App Developers. The content outline for the tutorial is as follows
Freddy Copilot for Developers is a Generative AI-powered development experience tool that allows quicker and more intuitive app development. Stretching across the Freshworks app development journey, it integrates seamlessly with Visual Studio code and can suggest code snippets through conversational messages.
It is a powerful VS Code extension designed to help developers streamline their Freshworks application development process. With Freddy Copilot for Developers, developers can perform operations such as
We're excited to introduce the latest enhancement to Freddy Copilot, your trusted companion for simplifying Freshworks app development within Visual Studio Code. In this update, we're thrilled to unveil a groundbreaking feature: "Use Case to Code Integration."
What is Use Case to Code Integration?
Imagine a scenario where you have a concept or a requirement in mind for a Freshworks app, but you're not quite sure how to translate it into code. That's where our Use Case to Code Integration steps in!
Simply describe your use case or requirement in plain language, and Freddy Copilot will intelligently analyze your input and generate the corresponding Freshworks app code for you.
Why Use Case to Code Integration Matters:
Freddy Copilot for Developers supports a variety of features and here is a quick list of all the supported items
Freshworks Developer Platform is comprehensive and supports variety of feature and tools to simplify the app development experience.
Proceed with these items by following the instructions given in the next steps
This section details the steps required to install the Freshworks Developer Command Line Toolkit commonly referred to as Freshworks Development Kit (FDK) on different operating system platforms. The content outline for this section is as below.
The FDK is built as a Node JS application and requires the following software to be installed
The NVM installation instructions defer based on the platforms. Choose the steps for the respective operating system and follow the instructions to install the CLI.
brew
using the command below. Skip this step if already have brew
installed locally # run below command via terminal
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Verify the installation
brew version
# run below command via terminal
# install nvm
brew install nvm
source $(brew --prefix nvm)/nvm.sh
# verify version
nvm --version
# output should be v0.39.1 or higher
# Update your system software
# When prompted enter the admin user credentials to execute the command
sudo apt update && sudo apt upgrade -y
# run below command
sudo apt install curl
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash
$HOME/.nvm
directory. Then it sets the environment in the user's .bashrc
file. You need to load this environment to set the required configuration by running the following command: source ~/.bashrc
# verify version
nvm --version
# output should be v0.39.1 or higher
Install via installers
Install via chocolatey package manager
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
choco -v
# install nvm
choco install nvm
nvm --version
# output should be v0.39.1 or higher
Install inside Windows Subsystem for Linux
sudo apt-get install curl
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
# This loads nvm
# Update your system software
sudo yum update
# run below command
sudo yum install curl -y
# when prompted enter the admin user credentials to execute the command
curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash
$HOME/.nvm
directory. Then it sets the environment in the user's .bashrc
file. You need to load this environment to set the required configuration by running the following command: source ~/.bashrc
# verify version
nvm --version
# output should be v0.39.1 or higher
nvm -v
# output should be v0.39.1 or higher
nvm install 18
# output should be similar to "Downloading and Installing node v18.13.0 or higher"
# towards completion you should see similar to "Now using node v18.13.0 (npm v9.5.0)"
node -v
# output should be higher than v18.13.0
nvm alias default 18
# default -> 18 (v18.13.0) or higher
dnf module install nodejs:18/common
winget install OpenJS.NodeJS
npm install https://cdn.freshdev.io/fdk/latest.tgz -g
fdk -v
npm uninstall fdk -g
~./fdk
folder manually using the command given below # remove the ~/.fdk folder
rm -r ~/.fdk
npm install https://cdn.freshdev.io/fdk/latest.tgz -g
fdk -v
Towards the end of the installation, your output should be the same or higher than the listed versions
#for nvm -v
0.39.3
# for node -v
v18.13.0
# for npm -v
9.5.0
# for fdk -v
9.0.2
Here is the content outline for this section
node -v
# if you have more than one Node JS installations with nvm, use the v18.xx.x instance using following command
nvm use 18
fdk -v
# if using older versions of FDK it might ask for an FDK update. When prompted allow the upgrade
which fdk
C:\ProgramData\nvm\v18.xx.x\fdk
C:\Program Files\nodejs\fdk
<DRIVE_NAME>:\<INSTALLATION_LOCATION>\nodejs\fdk
C:\Users\{YOUR_USERNAME}\AppData\Roaming\npm\{node_version}\bin\fdk
Followiing are the features supported in current release of Freddy Copilot for Developers
Freshworks Developer Platform supports command line interface for app development, referred to as Freshworks CLI (FDK). It is a Node JS based utility that allows developer to create apps for Freshworks product by using pre-configured app templates.
fdk create
option, developer can create a starter app by selecting product for which the app is to be built.fdk run
command and stop the same using Ctrl + C
optionfdk pack
and the generated app distribution bundle archive need to be manually uploaded to the AMP for app listing/publishing.Here is a quick glimpse of exiting app developer journey
Freddy Copilot for Developers is the Generative AI-powered development experience that enables faster and more intuitive app development. Stretching across the app development journey, it integrates seamlessly with Visual Studio code and can suggest code snippets through conversational messages. It helps developers build and publish reliable apps faster through chat-based tutorials, Rapid code generation, and 1-Click actions such as 1-Click review, 1-Click Documentation, and 1-Click Publish.
With Freddy Copilot for Developers, you can forget mundane coding tasks or build apps from scratch and get started with building apps for your business needs right when you need them, and as quickly as you need it.
Through the power of generative AI, Freddy Copilot for Developers helps you ship high-quality, reliable Apps faster. Using the chat-based tutorials, Freddy Copilot for Developers empowers you to overcome upskilling challenges on a new platform. With rapid code generation, you can swiftly generate code for mundane, repetitive tasks. With 1 -Click actions you can review, document, and publish easily.
With assistance across the development journey, you can transform ideas from use cases to code deployments in a breeze. Freddy Copilot for Developers enables you with more time for value-added tasks and driving innovation across your business.
Freddy Copilot for Developers is capable of addressing app development-related queries along with general programming paradigms as it has the context of Freshworks Developer documentation. With future releases and advancements in the platform, additional documentation will be added or updated in its knowledge base to ensure users get relevant results.
You can list your email for our beta access, and keep eyes on the email and community announcements on open launch.
Currently, the Freshworks Developer Platform supports Node JS and React-based applications. To be consistent with platform behavior Freddy Copilot for Developers support the same.
Kindly follow the standard input prompting techniques for conversational AI models. Furthermore, to get improved results kindly use Freshworks app development context-related query terms.
You can very well do that. The Freddy Copilot for Developers operates as a developer assistant for code that provides chat-based code recommendations and one-click actions. The generated code output provides users explicit options to "copy code" or "insert code." Developers can choose to include or discard the output code as deemed necessary.
The Freddy Copilot for Developers is an AI assistant and produces moderately accurate code snippets for the Freshworks app context when prompted correctly. However, since it is in its early stages of development, at times the results might not be accurate. We recommend developers provide feedback on the output response whenever met with such a situation, which will allow us to improve the code quality for such sections.
The multi-lingual support is not there yet and English is the only supported language. When demand for a specific language increases it may be incorporated into Freddy in future versions.
Currently there is no pricing for Freddy Copilot for Developers, we are opening gates for developers to explore Freddy Copilot for Developers and build apps for freshworks. There will be rate limiting on API calls.**
Yes, as of 15th June 2023, Freddy Copilot for Developers is available globally in all the Freshworks regions.
The Freddy Copilot for Developers is available with hourly token limit. These limits can be configured at account level and can be increased with formal requests via support process.
These tokens are a soft quota limit to put control the on number of calls allowed via developer interface to limit platform abuse. The available tokens for use will be shown in the left top corner of the conversational chat interface.
No, Freddy Copilot for Developers will not be having any code base except one you give it as an input. Freddy can accept textual input as well as code-based inputs. When passed private code as input, it can analyze and suggest improvements for the code.
Freddy explicitly uses chat context to give contextual results based on user input queries. It results in higher token usage; hence, it is a configurable option that users can opt in or out of. By default, it uses five query responses as context for giving relevant results, which are maintained in the local storage of the workspace. Once the user closes the current workspace, the data is lost.
Freddy implicitly captures user data such as output feedback (upvote, downvote, and textual inputs), tokens used, and input prompts to enhance output quality in the future. It further uses chat context of last five interactions to provide relevant results. However, it doesn't support chat persistence, so no confidential or personal information is captured or stored. Hence, the data sharing controls are not in place.
When developing applications that deal with sensitive data, we recommend complying with local data and privacy guidelines with local regulations for app building while using Freddy. For example, EU-GDPR when dealing with customer data for the European region.
In this section we will build few simple app use cases from real time and try to build apps for the same using Freddy Copilot for Developers. They are listed as below
The above mentioned use cases can be solved with Freshworks in following manner
The configured token limit for the developer account is 60000 tokens per hour. If exhausted the quota limit, wait for the cooldown period and try again. Be mindful when using large and complex queries as it will consume higher amount of tokens.
Verify your API key and account association is pointing to the environment being referred to. If you have more than one developer account, then the respective account API tokens will be different and will be used for publishing the apps using the same.