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).

I suggest you ...

You've used all your votes and won't be able to post a new idea, but you can still search and comment on existing ideas.

There are two ways to get more votes:

  • When an admin closes an idea you've voted on, you'll get your votes back from that idea.
  • You can remove your votes from an open idea you support.
  • To see ideas you have already voted on, select the "My feedback" filter and select "My open ideas".
(thinking…)

Enter your idea and we'll search to see if someone has already suggested it.

If a similar idea already exists, you can support and comment on it.

If it doesn't exist, you can post your idea so others can support it.

Enter your idea and we'll search to see if someone has already suggested it.

  1. OWIN compatible ServiceStack

    With the OWIN specification being final, it seems like support is bound to happen sooner rather than later.

    I believe some effort was made a couple of year https://github.com/ServiceStack/ServiceStack.Owin).

    163 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    23 comments  ·  Flag idea as inappropriate…  ·  Admin →

    Whilst this feature requested OWIN support, it really wanted better integration with the external ecosystem outside of ASP.NET Handlers.

    This is now resolved with .NET Core which has become the future Web Platform for .NET which as part of its design supports the integrations that OWIN was created to enable.

    We’re happy to announce that ServiceStack now supports running on .NET Core where it now can happily co-exist with external frameworks, e.g. you can host ServiceStack + MVC together in the same default route space without being forced to mount ServiceStack at a custom `/api` route.

    For more details on ServiceStack’s support and integration with .NET Core please checkout the full release notes: http://docs.servicestack.net/releases/v4.5.2.html


    As this feature request was quite contentious I want to leave my closing thoughts on our hesitance to support OWIN:

    With .NET Core it’s clear OWIN was the…

  2. Add Integration with node.js

    Improve integration with ServiceStack + node.js and add examples showing how to use ServiceStack as an efficient API back-end for a node.js-powered web application (as an alternative to MVC + ServiceStack).
    Node Proxy example already at:
    https://github.com/ServiceStack/ServiceStack.UseCases/tree/master/NodeStackProxy
    If it's more efficient and gets Linux/Mono support ServiceStack could integrate with: https://github.com/tjanczuk/edge

    20 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    2 comments  ·  Flag idea as inappropriate…  ·  Admin →
  3. Create Xamarin Components

    Create ServiceStack components for the Xamarin Component store.

    16 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →

    Deciding against creating separate Xamarin components at this time – NuGet packages are more re-usable and easier to manage.

    You can add the NuGet Package Manager to Xamarin Studio to make it easier to install NuGet packages, see:
    http://barambani.wordpress.com/2013/10/07/add-nuget-package-manager-and-servicestack-to-xamarin-studio-projects-2/

    Whilst the PCL ServiceStack clients that support iOS and Android are being maintained on: https://github.com/ServiceStack/Hello

  4. Enable ServiceStack Services in UWP

    Provide a package that allows hosting ServiceStack services (specifically web services and web sockets) in a UWP environment. The primary use-case for this is to allow ServiceStack services to run on an IoT device using UWP IoT Core.

    13 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  5. 9 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Flag idea as inappropriate…  ·  Admin →
  6. Add ServiceStack + Dart + WebComponents / Polymer.js example

    Add a starter template to make use of the next generation web framework by Google with Dart + WebComponents/Polymer.js https://www.dartlang.org/polymer-dart/

    7 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    2 comments  ·  Flag idea as inappropriate…  ·  Admin →
  7. Implement ideas and techniques from Jil for Json speed

    Jil currently holds the crown for the fastet .NET Json serializer. There are some incredible tips/tricks/techniques that Kevin uses to achieve these speeds. Maybe it's possible to backport some of these into Servicestack.Text to increase serialization speed?

    Latest benchmarks:
    http://t.co/oQzvtR9FmT

    Project:
    https://github.com/kevin-montrose/Jil

    7 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    2 comments  ·  Flag idea as inappropriate…  ·  Admin →
  8. Continue supporting .NET 4.0 projects

    Microsoft has ended support for .NET 4, 4.5 and 4.5.1 on January 12th:
    https://blogs.msdn.microsoft.com/dotnet/2015/12/09/support-ending-for-the-net-framework-4-4-5-and-4-5-1/

    We've started seeing some of our 3rd Party NuGet dependencies stop providing .NET 4.0 builds which is forcing us to reference old packages and prevents us from being able to access newer features.

    As a result we plan to follow .NET recommendation and stop providing .NET 4.0 builds for all releases after August 1st, 2016.

    If you absolutely need .NET 4.0 builds beyond this date please leave a comment on this request describing your use-case as well as the expected date before you will be able…

    5 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  9. Support multiple API (service contracts) on the same AppHost

    I would love to see that the AppHost supports multiple "API:s", or service contract, hosted on the same AppHost (and thus the same port), or several differnt AppHosts but using the same port...

    I am using the sefl-hosted solution and I dont have a separate web server to do some mod-rewrites, reverse proxies and such (which is messy anyways).

    The reason:
    I have several "webservices", Ws1, Ws2 etc, and they often have some identical DTOs/methods (such as Login etc). I want to use only one IP:port that then makes these different webservices available under a prefixed path.

    So, for example,…

    3 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  10. AutoQuery additions/flexibility

    It would be useful to have AutoQueries that could do
    1. custom joins (currently, you have to write a service 'override')
    2. generic, dynamic, or object as a return type!

    Potentially makes writing dozens of reports easy to maintain (for our department) because they are maintained from their source objects instead of having a DTO for each one, considering that regular joins already work that way where they do not require a custom return type to return!

    3 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    2 comments  ·  Flag idea as inappropriate…  ·  Admin →

    Custom joins can’t be declared in a class definition, you would need to use a Custom AutoQuery implementation.

    AutoQuery Services require populating a Typed Response DTO which is what’s needed to indicate which columns to return. Unknown return types can’t be documented in metadata services and can’t be consumed in any supported language which requires deserializing into a known type.

  11. Rate ServiceStack Customer Support Agents

    I think having a rating on the developers who respond would help the company allocate resources more appropriately. Basically a 5 star rating system if you want to rate your interaction with their people, with the ability to make a comment about the quality of the service your received.

    3 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    3 comments  ·  Flag idea as inappropriate…  ·  Admin →

    This site is for feature requests you would like implemented in ServiceStack’s Software.

    For completeness, I understand you’re frustrated and requesting this in response to your feature request being declined:

    https://servicestack.uservoice.com/forums/176786-feature-requests/suggestions/32034631-add-documentation-for-the-publishmessage-in-the-ir

    and my response to your comments on:

    https://servicestack.uservoice.com/forums/176786-feature-requests/suggestions/12303831-sdk-documentation

  12. Possible performance problem in MarkdownFormat plugin

    The MarkdownFormat plugin recursively searches all directories for *.md files during Registration (in the Register() method).

    We have some web applications, where we have thousands of (sub-)directories, e.g. in a data folder. This means, that the Register() method may take up to 60 seconds to scan for *.md files, thus slowing down the application startup.
    We have one customer who reported a startup-delay of several minutes.

    As far as I have seen (using ServiceStack 3.9.71), there is no way to restrict the folders being searched by the MarkdownFormat plugin.

    In our case, the workaround was to simply disable the Markdown-Feature…

    3 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Flag idea as inappropriate…  ·  Admin →
  13. Enable FluentAPI to add dynamically response type

    It's possible to add an overload in Fluent API to register also the response type together with the routing path?

    For example: Routes.Add(requestType,restPath,verbs,responseType).

    This can be useful when you can't use the IReturn Interface on DTO objects (for example inside UniversalApp PCL).

    3 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  14. Select and copy key values

    When displaying a hash, it's impossible to select field or value to copy them

    3 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  15. Allow customization of authentication route verbs

    It is currently possible to override the default authentication routes, but only the path can be set. It would be useful to be able to override the allowed verbs. I'd like to be able to prevent GET /auth/credentials, by limiting the endpoint to POSTs only. I've not been able to find any other ways of doing this.

    3 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    3 comments  ·  Flag idea as inappropriate…  ·  Admin →
  16. Allow API documentation with comments

    This may be related to this:
    https://servicestack.uservoice.com/forums/176786-feature-requests/suggestions/4459106-api-explorer-meta-data-enhancements

    We have a lot of documentation to fill in, and while the Attributes are great for fine-grained details (if you need them), they are cumbersome with longer descriptions. It would be nice if I could just /// my classes / properties and ServiceStack would fill that in for the Notes (or maybe it's summary?). Maybe a swagger plugin option of ScanCommentsForNotes?

    3 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  17. Refactor IRedisSubscription interface to be more intuitive

    https://github.com/ServiceStack/ServiceStack.Redis/wiki/RedisPubSub gives a good example of how to use pub sub pattern. However, from the documentation that is provided with the API, I don't think there's a way to infer that in the property Action<string, string> OnMessage { get; set; } the first param is the channel,
    and the second one is the msg. Other functions are pretty self explanatory, but for this one, I don't feel like I should have to thumb through a bunch of examples to have to figure out how to use it.
    A more self explanatory pattern would be to have an actual event OnMessage…

    3 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Flag idea as inappropriate…  ·  Admin →

    The OnMessage is documented on both the wiki and the home page:
    https://github.com/ServiceStack/ServiceStack.Redis#usage

    If the API isn’t self-explanatory checkout the docs to see if there’s an example, otherwise feel free to ask a question on our Forums or StackOverflow.

    I’ve added API docs in this commit https://github.com/ServiceStack/ServiceStack.Redis/commit/cc5f4ba416d5c904a9b483adf92a504c2e9e9dd9

    But we wont be making any breaking changes to existing APIs.

  18. TechEmpower.com Benchmarks

    ServiceStack does not look so good here, some are slow, others are failing entirely. I would be particularly interested in nginx and smart thread pool results being updated

    2 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    declined  ·  1 comment  ·  Flag idea as inappropriate…  ·  Admin →
  19. 1 vote
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  20. Add documentation for the PublishMessage in the IRedisClient

    In the IRedisClient version 4.0.0, there is a method with signature:
    long PublishMessage(string toChannel, string message);

    There is no documentation in the code indicating what the return type of "long" indicates. Having to go online to look this up is rather tedious, and seems to be a common problem with the documentation.

    1 vote
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    5 comments  ·  Flag idea as inappropriate…  ·  Admin →
← Previous 1
  • Don't see your idea?

Feature Requests

Feedback and Knowledge Base