Feature Requests
Feature, docs and use-case samples requests for ServiceStack. If you can, focus on the end-user benefit / use-case, rather than the technical details so we can focus on the end-goal and free us to work on how best to achieve it. Features can also include supporting content, e.g. a starter project on how to use ServiceStack with another product (e.g. SS + SharePoint).
-
Management Overview Dashboard
While being able to offload to statsd/graphite/raygun/... is great, a "state of the nation" dashboard would be really handy.
This could show requests/sec, wait times, "slow" requests, auth failures, live access map, recent exceptions, known issues (e.g. can't connect to redisX/mssqlY)
219 votes -
Built-in Active Directory Authentication suport.
I would really like to see out of the box support for IWA - Integrated Windows Authentication with Active Directory. Many in-house .Net developers for both large and small organizations write web applications that are Intranet facing, and require the use of Integrated Windows Authentication with IIS. In these environments, corporate security policy often dictates that Active Directory group membership should drive what resources a user can and cannot access.
So, Kerberos authentication often plays a big part in shipping the logged in user’s credentials via tickets from the application server to back end databases. Built-in support for a ServiceStack…155 votesA preview of AspNetWindowsAuthProvider was added in the v4.0.21 release, see:
https://github.com/ServiceStack/ServiceStack/blob/master/release-notes.md#windows-auth-provider-for-aspnet -
Support OAuth2 on .net core
At the moment, the *OAuth2 Providers for ServiceStack* library does not support .net core, as explained by mythz in this StackOverflow answer:
> ServiceStack's OAuth2 depends on DotNetOpenAuth which unfortunately doesn't support .NET Core so there's currently no support for OAuth2 - https://stackoverflow.com/a/42344183/969613
Google Authentication is a feature requirement on my current project, so this one thing is preventing us from moving to .net core, support for this would be great.
151 votesA new GoogleAuthProvider is available from v5.2.1 on MyGet, see this post for details: https://forums.servicestack.net/t/no-gooogle-oauth-for-net-core/6254/7?u=mythz
-
Deeper SignalR Integration
I'd like to see a deeper integration between ServiceStack and SignalR. Here are a few ideas that I've so far ran into...
1. A Hub Authorization Attribute which implements IAuthorizeHubConnection and/or IAuthorizeHubMethodInvocation.
2. Some sort of JsonServiceClient integration with HubConnections. Maybe automatically associating Cookies with a new HubConnection. Plus exception handling wrappers (i.e. Like an Unauthorized exception is thrown within a SignalR exception).
3. Centralized documentation outlining what needs to be changed in the web.config for SignalR to co-exist with ServiceStack. Also why the UseBufferedStream property should be enabled for SignalR.
4. This might require a separate feature request but…
141 votesThe way ServiceStack and SignalR will be able to integrate in future will be through .NET Core’s IApplicationBuilder pipeline which by design supports running multiple frameworks within the same App that can now share the same default route namespace.
From the v4.5.2, ServiceStack now supports running on .NET Core, please see the guide in the full release notes which shows how to register ServiceStack’s AppHost in .NET Core: http://docs.servicestack.net/releases/v4.5.2.html
SignalR for .NET Core has yet to be released but it’s expected you’ll be able to access SignalR via its dependencies registered in .NET Core’s Startup which will also be injected in your Services like normal IOC dependencies.
We’ll update this feature request again with an example showing a demo of ServiceStack + SignalR together in the same App once SignalR is available on .NET Core in 2017.
-
Add BulkInsert/Bulk Copy to the ormlite databases you can
Being able to bulk insert/copy would be cool.
Adding support in so I could just take a list and
Db.BulkCopy(listOfObjects);
would be pretty sweet.
SqlServer has the bulkCopy object, postgres has the copy command, sqlite has import (although no idea how well that works) , and mysql...well...who cares (i don't know what they have)
Having a single interface for bulk copying objects into different databases I think would be a nice feature for ormlite. (not sure how feasible)
115 votes -
Create an object that supports the coming Redis Cluster feature with v3.0
Much like you have created a RedisSentinel object ... I have a need for a RedisCluster object that supports the new feature which is coming in v3.0. Thanks.
114 votes -
Provide Async Support For Redis Client
Currently redis client is not async - this is wasting valuable resources on the server side. As far as I understand async support is currently only there for service clients and not redis
103 votes -
Add fast TCP endpoint
Add the most efficient remote endpoint for consuming ServiceStack services.
Ideas: use https://github.com/nanomsg/nanomsg (by author and successor to ZeroMQ in C).
Advantages: Abstracts IPC/TPC/InMemory for picking the most efficient transport. Can easily interoperate with other NanoMsg clients on other platforms. C is nice to embed than C++.
Disadvantages: Still in Alpha, unclear when it will be stable/safe to use. Still native, requires effort to use 32/64 bit architectures and cross-platform on Mono.Alternative: Build endpoint on raw TCP sockets in C# using something like Redis wire protocol for efficient transfer of message payloads. Could imitate operation on redis-server for interoperability…
99 votes -
OrmLite CodeFirst Schema Migrations
Support to automatically update a db schema based on changes such as: adding/renaming and possibly removing a property or class.
90 votes -
API Explorer/Meta data enhancements
Building upon swagger feature, (but possibly re-engineering)
Support to include:
- complex (nested) DTO's and array
- markdown documentation (for detailed description)
- role/access based display (so only authorised endpoints are displayed)
- rebranding support
- ability to install nuget package without /docs folder (so as to get annotations, but not html in a model lib)82 votes -
70 votes
We’ve added support for Server Sent Events (SSE) as an integrated Server Notifications option that can be used as an alternative for Web Sockets at: https://github.com/ServiceStack/ServiceStack/wiki/Server-Events
-
ServiceStack to support localization
support localization in messages for validations or any other messages sent to the client
64 votes -
OpenID Connect Auth Provider
"OpenID Connect (OIDC) is an authentication layer on top of OAuth 2.0, an authorization framework." The benefit to developers and consumers is a more simplified way to add a new Auth provider which would provide some standard user info.
http://openid.net/connect/62 votes -
SDK Documentation
The c# SDK is seriously lagging in documentation. By that I mean IntelliSense documentation: it would be awsome with some "in line" documentation for methods and properties in the SDK
60 votes -
Akin to Swagger, please provide built in support for RAML
RAML (see raml.org) is pretty sweet as a design tool... like Swagger 2.0, you can design your full API and corresponding documentation in the designer tools.
It would be nice to have ServiceStack support reading RAML generated specs and automagically create the corresponding ServiceStack API with stubbed in methods.
One of the nice things about RAML is the ability to generate a mock JSON responses and/or status codes from a specified endpoint as directed by the RAML designer tools. This allows it easy for other peer developers (and regression tools) to consume your service although it might still be under…
55 votes -
Support oAuth2 login to Swagger API
Swagger now support oAuth login page to create a access_token to apply to a oAuth protected API: http://developers-blog.helloreverb.com/enabling-oauth-with-swagger/
Please could you add a similar capability to ServiceSatck.SwaggerFeature that enables SS developers to add a similar capability to their own APIS that are protected by oAuth.
47 votes -
ServiceStack GraphQL endpoint
I've just stumbled upon Facebook's GraphQL and it's pretty slick.
The ability to query a ServiceStack endpoint using GraphQL would be a great addition (maybe similar to AutoQuery?) If ORMLite could also populate an object graph using a GraphQL query...42 votes -
Integrate with Thinktecture.IdentityProvider
I would like to have an OpenId and OAuth integration with Thinktecture.IdentityServer just like google and Facebook. I would like to implement my own SSO instead of relying on social networking OpenId
42 votes -
Add async API's for caching
Provide async overloads for caching API so async operations can construct the cache.
More info:
http://stackoverflow.com/questions/20505186/servicestack-v4-server-side-async38 votes -
Support the Oracle OrmLite provider
Currently Oracle is not a supported OrmLite provider that's listed on:
http://servicestack.net/downloadVote for this feature request if you would like to see the OrmLite Oracle provider officially supported.
35 votes
- Don't see your idea?