Skip to content
This repository has been archived by the owner on Dec 1, 2023. It is now read-only.

alexa/skill-components

Repository files navigation


Alexa Skill Components

Develop better Alexa skills faster with high-quality pre-made skill components.

Please note: Alexa Skill Components are being provided as a pre-production alpha release in Developer Preview with limited support. Our goal is to solicit feedback on our approach and design building towards their broader general availability in the future. While we will make every effort to minimize it, we do not make any backwards compatibility or rapid turn-around bug-fix promises with this pre-production alpha release. You can sign up for the developer preview here to use these components.

We will be actively making updates to these components and we look forward to mature them with your feedback. So, check back in here to get the latest and greatest version.

Sign up and join us in our effort to help you build more engaging Alexa skills faster!

Table of Contents

Introduction

Skill Components are “ready to use” experiences that you can easily add to your skills, and configure them according to your needs. Each component is a collection of skill primitives, such as VUI dialogs & intents, Alexa Presentation Language (APL) documents, skill code, skill connection tasks, and skill events. They bring together design best practices and pre-built voice experiences, which solve for a myriad of interaction paths that a customer can take. You can import these components into your existing Skill Package, compile, and then deploy your skill. These components are built using Alexa Conversations (AC) and the Alexa Conversations Description Language (ACDL).

Getting Started

1. Install prerequisites

2. Familiarize yourself with Alexa Conversations Skill Development

For those unfamiliar with skill development, the flight search example skill tutorial is a good starting place.

3. Understand how components work

How Components work

4. Choose a skill component

Choose a specific skill component that interests you and read it's own "Getting State" guide.

Components

The following skill components are contained in this package:

Component Description Status NPM Package
Feedback Elicitation Collect user feedback for your skill Private Preview Here
Catalog Explorer Explorer a catalog of items including ability to search, refine and perform actions Private Preview Here
List Navigation Pre-built experience to navigate through a list of items Private Preview Here
Account Linking Simplifies enabling account linking for your skill Private Preview Here
In Skill Purchases pre-built experience to enable in-skill purchases Private Preview Here
Checkout Enable users to add items to a cart and make online purchase with a full checkout experience Private Preview Here

How Components Work

Component Architecture


Components are NPM packages that skill developers can import into their skills; each component contains sample dialog flows (in the form of a ACDL reusable dialog) and API request handlers (developed in TypeScript) alongside default utterances and audio/visual responses (to aid in an easy on-boarding).

When a skill is deployed, the ACDL, API handlers, responses, etc. from any components being used by the skill will be merged into the skill's other resources and built at the same time.

Note that a skill must be using ACDL to utilize skill components.

Feedback Elicitation is the easiest component to start with to better understand skill components.

Contributing

Alexa's aim is to create a vibrant ecosystem of components jointly developed with the community of Alexa skill developers; all forms of contribution to skill components is welcome, including:

Code of Conduct

This project has adopted the Amazon Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opensource-codeofconduct@amazon.com with any additional questions or comments.

Contributing Guide

Read our contributing guide for more information.

Support

Alexa is dedicated to ensuring skill developers of all experience levels can utilize skill components.

If your just getting started, make sure to review the general documentation and the documentation of any specific component that interests you.

If you want to discuss or need some help, please reach out the Slack community, Developer Forum, or on StackOverflow.

If you notice an issue in a component or wish to propose a new component, please submit a GitHub issue.

If your having trouble building a specific skill, then please reach out on the Alexa developer contact form

Security

See security issue notifications for more information on how to report security issues.

License

This library is licensed under the Amazon Software License.