Skip to content

a suite of packages used to build on the Teams Platform.

License

Notifications You must be signed in to change notification settings

aacebo/teams-sdk-js

Repository files navigation

Teams SDK: Javascript

a suite of packages used to build on the Teams Platform.

⚠️ Warning: this project is not supported or affiliated with Microsoft in any way!

Why?

Building agents and bots for Microsoft Teams can often involve a lot of boilerplate code and managing numerous dependencies, which can be time-consuming and complex. Our new SDK aims to simplify this process by minimizing the boilerplate and dependencies required, while also providing helpful AI/Teams native abstractions. This allows developers to focus more on creating intelligent and effective bots, rather than getting bogged down in setup and configuration. By streamlining the development process, we hope to make it easier and faster to build powerful, AI-driven bots for Microsoft Teams.

Design Philosophy

These packages were designed with the following mentality to ensure longevity and sustainability.

Low Dependency

BotBuilder has struggled to support new LTS versions of node due to many dependencies being deprecated or requiring major version bumps (eg requires code changes to update).

By providing interfaces and default internal implementations, we mitigate this risk.

ℹ️ Note: when necessary we will still use an external dependency, namely when an internal implementation is non-trivial.

Unopinionated

BotBuilder is a highly opinionated Framework, meaning it dictates many of the dos/don'ts of development with its packages.

This goal of this project is that they be a set of unopinionated packages that export simple abstractions for development in Microsoft Teams, leaving the app design descisions to the developer.

Scripts

all scripts can be run for a particular workspace by appending --workspace=${name}

Build

$: npm run build

Clean

$: npm run clean

Format

$: npm run fmt

Dev

for apps/samples only

$: npm run dev

Test

for packages only

$: npm run test

Packages

Samples

Apps

Links