Giter VIP home page Giter VIP logo

polaris's Introduction

Polaris

Join the chat at https://gitter.im/PowerShell/Polaris Build status PowerShell Gallery

A cross-platform, minimalist web framework for PowerShell.

Disclaimer

Polaris is currently an unsupported, experimental, proof-of-concept. There is no current plan to turn it into a supported Microsoft product.

That being said, we do plan on continuing to experiment within this repository for the foreseeable future.

Example

New-PolarisGetRoute -Path "/helloworld" -Scriptblock {
    $Response.Send('Hello World!')
}

Start-Polaris

Why yet another web framework for PowerShell?

There have been a great list of otherย micro web frameworks written over the years (Thanks @jaykul for the list!).

Polaris' differentiation is that it is cross-platform and uses the .NET HttpListener class.

Getting Started

Prereqs

Steps

PS > Install-Module Polaris

You can now try out the example above or checkout the site for more usage information!

From source

  1. Clone or download the zip of the repo
  2. Open PowerShell
  3. At this point, you can now run Import-Module ./Polaris.psd1

You can now try out the example above or checkout the site for more usage!

You can also run all the Pester tests by running Invoke-Pester in the test directory. You will need Pester version 4.1.0 or higher to run the tests on Linux or MacOS.

Documentation

Check out the docs folder or the site for a full API reference.

Troubleshooting / Questions

Twitter: #PSPolaris Slack: See us in the #Polaris channel of the PowerShell Slack GitHub Issues: Submit a bug / new feature idea / or just a question as a new GitHub issue

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 Expressjs (route parameters, query parameters, middleware, auth etc)

  • Investigating the use of Kestrel/ASP.NET Routing instead of HttpListener

  • Creating a routing domain-specific language (DSL) for isolating and running script blocks as routes. Drawing inspiration from Pester.

Feedback

This project is an experiment that has the possibility to grow into something great. We can't do that without great feedback from you.

If you have an idea or find a bug, join the discussions in the issues or create a new issue.

License

Polaris is licensed under the MIT License.

Maintainers

Code of Conduct

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

polaris's People

Contributors

affieuk avatar bateskevin avatar bgelens avatar bladefirelight avatar chendrayanv avatar csandfeld avatar doug-reimer avatar gitter-badger avatar hvid avatar jeremymcgee73 avatar joeyaiello avatar stephanevg avatar stevel-msft avatar tiberriver256 avatar timcurwick avatar tylerleonhardt avatar vors avatar

Watchers

 avatar

Forkers

ingenium21

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.