London Travel Technologies


London Travel is an Open Source Software (OSS) skill for Amazon Alexa, whose source code is hosted in GitHub.

It uses a variety of free and OSS technology to help you find out about the status of the London Underground, Docklands Light Railway (DLR), TfL Rail and London Overground using the Transport for London (TfL) API.

This page lists the various technologies, both open and closed source, free and paid, that help enable its features.


Skill

The skill itself is written in JavaScript for node.js using the Alexa App Server module for the intents it provides for use with an Alexa-enabled device. The code itself is hosted in Amazon Web Services (AWS) as an AWS Lambda function. It can also be linked to an account created using this website to enable personalisation, such as for the status of lines you regularly use.

The technologies used to develop, deploy and run the skill include:

  • alexa-app-server
  • Application Insights
  • AWS CloudWatch
  • AWS Lambda
  • AWS X-Ray
  • BuildStats.info
  • CodeCov
  • GitHub
  • Istanbul
  • JSHint
  • mocha
  • nock
  • node.js
  • npm
  • Shields.io
  • Sinon.js
  • TfL API
  • Travis CI


Website

This website is written in C# for ASP.NET Core with HTML and TypeScript, and is hosted in Microsoft Azure.

The website provides pages to support creating an account to link to the skill, as well as pages for managing your account and setting up your preferences for personalised functionality within the skill. It also provides the REST API used by the skill to retrieve your preferences when linked to an account.

The technologies used to develop, deploy and run the website include:

  • Amazon Login
  • Application Insights
  • AppVeyor
  • ASP.NET Core
  • AspNet.Security.OAuth.Providers
  • Azure App Service
  • Azure Blob Storage
  • Azure CDN
  • Azure Cosmos DB
  • Azure DevOps
  • Azure Key Vault
  • Bootstrap
  • Bootswatch
  • BuildStats.info
  • BundlerMinifier
  • CloudFlare CDN
  • DNSimple
  • Facebook
  • Font Awesome
  • GitHub
  • Google Accounts
  • Google Analytics
  • Gravatar
  • gulp
  • Jasmine
  • jQuery
  • jquery.lazyload
  • JSHint
  • Microsoft Accounts
  • Moment.js
  • Moq
  • Newtonsoft.Json
  • npm
  • NuGet
  • PhantomJS
  • report-uri.io
  • Serilog
  • Shields.io
  • Shouldly
  • StyleCop Analyzers
  • Swashbuckle.AspNetCore
  • TfL API
  • Travis CI
  • Twitter
  • TypeScript
  • xUnit.net

Community Contributions

Some of the functionality implemented or needed for this skill or website has been contributed back to the Open Source community for re-use by others. Examples include:

Acknowledgements

Thank you to all the Open Source Software, their contributors, and free services, that make this skill and website possible.