Bot Framework v4-3 Template

Thursday, 11 April 2019

There is no official template for starting a Bot Framework V4.3 project. So colleagues and I created one. This articles outlines what it does and how to use it.


This article was published at GitHub. It is open source and you can make edits, comments etc.


Myself, Ibrahim Kivanc and Martin Simecek created a starter bot template for .net which uses v4.3 patterns and common features.

Get the VSIX here.

See the GitHub repo here.

The latest version of the Bot Framework is v4.3 and it was released in March 2019. You can read about the exciting new features in the Conversational AI updates for March 2019 Article from the Bot Framework product team.

At the time of writing (11th April 2019), the templates, documentation and samples had not yet been updated to reflect the new v4.3 patterns and practices.

There are new samples being produced in the Samples Work in Progress branch. This features many patterns and practices which are new to v4.3.

There is not yet a v4.3 template or a project type that is suited to starting a new project with v4.3 patterns, therefore it is difficult to create a new bot project from scratch.

Introducing the Starter Bot template

Myself, Ibrahim Kivanc and Martin Simecek have been working on a project and associated VSIX which can be used as a great starting point for a .net Bot Framework v4.3 project that uses the latest patterns and practices.

We have looking through the Samples Work in Progress branch to determine common patterns shown in every sample and features which we think will be relevant to almost every bot project.

We've rolled them all into the Bot Starter Template for v4.3

The Starter Bot includes the following:

  • Bot project with v4.3.2 Microsoft.Bot.Builder.* NuGet packages
  • Up-to-date patterns around StartUp.cs, Program.cs, BotController.cs, the main ActivityHandler architecture and dialog constrctors
  • Basic dialog system with a root dialog and multiple child dialogs
  • Global state being updated and used across ActivityHandler and Dialogs
  • Passing objects to dialogs on construction
  • Strings using RESX files
  • A placeholder (commented out) example of using Dispatch, Luis and QNAMaker


You can get the VSIX for the Starter Bot project here.

GitHub Repository

You can browse the GitHub repository for the Starter Bot project here.

Got a comment?

All my articles are written and managed as Markdown files on GitHub.

Please add an issue or submit a pull request if something is not right on this article or you have a comment.

If you'd like to simply say "thanks", then please send me a .

An error has occurred. This application may no longer respond until reloaded. Reload 🗙