Disclaimer

We open sourced this as an experiment. It’s not an officially supported Microsoft library and there is no plan yet to do so. However, we are listening to the community to determine if this work is important enough to continue investing in.

Why we made Polaris

PowerShell is evolving and we want to experiment with other use cases for PowerShell. With .NET Standard 2.0 out, we were able to get our hands on the .NET HttpListener class originally from the .NET Framework. With it comes a solution that works anywhere that PowerShell does.

We also wanted to give those that are really familiar with PowerShell a way to run their own webservers to allow for a language-agnostic way to run PowerShell scripts thanks to HTTP. Imagine a mobile app triggering remote PowerShell scripts all through HTTP. Or hosting a static site and interacting with an external API all using PowerShell for server code.

We’re excited to see all the use cases emerge and receive feedback from PowerShell’s already incredible community.

Roadmap

We have a few paths we are interested in taking. We hope the community helps direct us.

Expanding on the current implementation using HttpListener to deliver features you’d expect from projects ASP.NET or Express.js (route parameters, query parameters, middleware etc)