Skip to content

Instantly share code, notes, and snippets.

@arunjeetsingh
Last active August 11, 2021 01:42
Show Gist options
  • Save arunjeetsingh/6339f67c1e73e4b490dcca4f3aed236a to your computer and use it in GitHub Desktop.
Save arunjeetsingh/6339f67c1e73e4b490dcca4f3aed236a to your computer and use it in GitHub Desktop.
APL Framework Open Source Repositories

APL Open Source Repositories

This gist is a list of respositories that make up the Alexa Presentation Language (APL) open source framework. If you simply interested in building Alexa multimodal skills that use visuals, touch, remote, motion, and layered audio on Alexa devices go to https://alexa.design/apl-cake-walk and https://alexa.design/apl to get started. If you want to build a device with a multimodal Alexa check out the Smart Screen SDK here https://github.com/alexa/alexa-smart-screen-sdk. If, on the other hand, you're interested in learning how APL works or build tools to help developers and designers of Alexa multimodal experiences then these repositories are where it's at!

  1. APL Core Library (https://github.com/alexa/apl-core-library) - The rendering of screen layouts at runtime for the Alexa Presentation Language is controlled by the APL Core Library, which is an abstract engine that manages APL document parsing, layout inflation, event handling, commands, and the rendering workflow. The APL Core Library interfaces with platform and language-specific APL view hosts which are responsible for performing the rendering in the platform or framework for which the view host was designed. Consumers of the APL Core Library can create their own APL view host in order to create Alexa experiences with visual renderings on their device or platform in the programming language of their choice.

  2. APL View Host for Web (https://github.com/alexa/apl-viewhost-web) - The APL View Host for Web project is a language-specific APL view host which can be used to render APL documents in a web browser or an app with a web view comntrol. APL view host works in tandem with the APL Core Library to render APL documents. This is the view host that powers the Multimodal response authoring experience in the Alexa Skills Kilt (ASK) developer console, https://apl.ninja, and https://voiceflow.com 's Alexa multimodal preview functionality.

  3. APL View Host for Android (https://github.com/alexa/apl-viewhost-android) - This repo is a view host implementation for the Android Platform. It consists of a thin JNI layer that interacts with APL Core Engine for component inflation and command handling, and a native Android layout that maps APL Components to Android Views and ViewGroups. This view host can be used on Android/AOSP/FireOS-based devices.

  4. APL Suggester (https://github.com/alexa/apl-suggester) - This package provides suggestions and validations on APL documents. Currently it performs static checks ont he JSON (linting). The output warnings are aimed for suggesting best practice of writing APL templates.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment