package.json
author
fieldMIT
in the license
fieldnpm
for installing dependencies and include package-lock.json
in your pull request. We use npm
on our Continuous Integration (CI) environment when building and publishing extensions so, by providing a package-lock.json
file, we ensure that the dependencies on the server match the same versions as your local dependencies.Warning: This extension is not compliant with the Terms of Service of [service name]. Use at your own risk.
npm run build
locally before submitting the extension for review. This will perform additional type checking and create an optimized build. Open the extension in Raycast to check whether everything works as expected with the distribution build. In addition, you can perform linting and code style checks by running npm run lint
. (Those checks will later also run via automated GitHub checks.)Google Workplace
, Doppler Share Secrets
, Search in Database
Hacker news
, my issues
iOS
, macOS
, npm
.Emoji Search
, Airport - Discover Testflight Apps
, Hacker News
Converter
, Images
, Code Review
, Utils
Emoji Search
is better than Search Emoji
Notion Search
instead of just Notion
. This will help users to form the right expectations about your extension. If your extension covers a lot of functionality, it's okay to use a generic name like Notion
. Example: GitLab.Visual Studio Code
.<verb> <noun>
structure or just <noun>
Search Recent Projects
, Translate
, Open Issues
, Create Task
Recent Projects Search
, Translation
, New Task
Search Emoji
, Create Issue
Search an Emoji
, Create an Issue
Search Packages
NPM
xcode recent projects
would return Search Recent Projects
in the example above.Quickly open Xcode recent projects
Search Emoji
command since it's self-explanatorypng
formatmetadata
folder inside your extension directory. (This is different from assets that are required at runtime in your extension: they go inside the assets folder and will be bundled into your extension.)package.json
manifest file or select the categories when you create a new extension using the Create Extension command⌘⇧⌥+M
)Save to Metadata
CHANGELOG.md
file in your extension metadataCHANGELOG.md
file to the root folder of your extension-
and spaces either side of the hyphenspeedtest-cli
from install.speedtest.net
is acceptable, but doing this from some custom AWS server would lead to a rejection. Add additional integrity checks through hashes.[email protected]
.required: true
, Raycast will ask the user to set preferences before continuing with an extension. See the example here.Open in Browser
, Copy to Clipboard
Copy url
, set project
, Set priority
...
for actions that will have a submenu. Don't repeat parent the action name in the submenuSet Priority...
and submenu would have Low
, Medium
, High
Set Priority
and submenu would have Set Priority Low
, Set Priority Medium
, etcnavigationTitle
in the root command - it will be automatically set to the command name. Use navigationTitle
only in nested screens to provide additional context. See Slack Status extension as an example of correct usage of the navigationTitle
property.