Getting Started
Welcome to the Serenade docs! Here, you'll find an overview of everything Serenade can do, along with examples. First, let's get Serenade installed on your device.
Installation
Serenade is freely available for macOS, Windows, and Linux. To download Serenade, head to https://serenade.ai/download.
After installation, Serenade will walk you through installing plugins for supported applications, like VS Code, Chrome, and Hyper. Serenade will then guide you through interactive tutorials to practice voice coding.
Serenade can be configured to use cloud-based speech recognition or local speech recognition. To change this setting, just head to Settings > Server. If you're using Windows, the local server requires WSL with Ubuntu. Regardless of your setting, you can also opt into sharing your data with Serenade in order to help improve Serenade's speech-to-code machine learning models.
Setup
Serenade floats above all your other windows, so you can keep it side-by-side with other applications, like your code editor. You can toggle Serenade by clicking the Listening switch or pressing Alt+Space. Then, as you speak, you'll see a list of transcripts in the Serenade window.
Sometimes, Serenade isn't sure what you said, so you'll see a few different options. The first one will be used automatically, but to use a different option (and undo the first one), just say the number you want to use instead. For instance, to use the second option, just say
. If none of the options are right, you can just say .Basics
As you'll see throughout these docs, most Serenade voice commands have the same form:
The action
is something you want to do to your code. Common actions include to add a new line of code, to edit code, and to remove code.
A selector
is a block of code to operate on. Some selectors are text-based, like or . Even more powerful selectors are code-based, which enable you to reference parts of your code, including , , and . For a complete list of selectors, see the Reference section.
Serenade commands simply combine an action and a selector:
, , and .You can also chain commands together without pausing. For instance, you can say
to save your current file and then focus your terminal, or to add a new method at the start of a class.Finally, you can also specify how many times a command should be executed. For instance
will run the indent command three times.Common Commands
Below is a compact list of commonly-used Serenade commands that you can use as a reference or cheat sheet as you're learning voice coding.
Command | Description | Examples |
---|---|---|
go to <selector> | Move your cursor around a file | |
add <code> | Add a new statement or construct | |
insert <code> | Insert text at your cursor | |
change <old> to <new> | Change existing text | |
delete <selector> | Delete text | |
copy/paste <selector> | Copy, cut, paste | |
indent/dedent | Change the indentation level of code | |
save | Save the current file | |
undo | Undo the last operation | |
open <text> | Open a new file | |
(next | previous) tab | Switch tabs in your editor | |
focus <text> | Switch apps |
Navigation
With Serenade, you can navigate pages and manage tabs with voice commands.
Command | Description |
---|---|
Navigate to a web page | |
Navigate back or forward in history | |
Reload the web page | |
Scroll the browser | |
Scroll to the top or bottom of the page | |
Scroll to given text on the page | |
Create a new tab | |
Close the active tab | |
Switch tabs | |
Trigger an undo | |
Trigger an redo |
Links & Inputs
Using Serenade, you can also interact with links and inputs on a web page.
Command | Description |
---|---|
Show numbered overlays for each link on the page | |
Show numbered overlays for each input field on the page | |
Click a numbered overlay | |
Hide overlays | |
Click the link matching the given text |
Editing Text & Code
When focused on an input, all of Serenade's functionality for writing code and editing text will be enabled. For instance, you can say
to add text, to edit text, or " to remove text.Serenade is designed to work with with a variety of inputs. So, whether you're training on model on Jupyter, analyzing data on Google Colab, building a project on repl.it, or practicing algorithms on LeetCode, Serenade can help you write code in a web browser.
To learn more about using Serenade to write code, check out the Editors & IDEs documentation.