Breeze Feature Suggestions

Help us make Breeze.js better by letting us know what you’d like to see next.

Suggest new features, vote on existing ones, or fork Breeze in GitHub and send us a pull request.

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 vote and comment on it.

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

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

  1. RESTfull conception support

    RESTfull concept suggests to use different http methods(get/post/put.delete) for CRUD operations with specific request params and responses. Also it suggests send only necessary info.(for ex. no need send entityAspect for RESTfull API).

    Similar functionality exists in JayData. Will be great if Breeze will support this functionality too. It'll be usefull for big apps, for api which have to be shared to other clients and expand area of usage.

    Also this functionality will add supporting DTO without writing own context provider for breeze.webapi .net framework because in this no need to use breeze.webapi .net. Generally users will develop asp.net web api…

    61 votes
    Vote
    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      I agree to the terms of service
      Signed in as (Sign out)
      You have left! (?) (thinking…)
    • Support .NET Validation Attributes

      It would be great if the .NET validation attributes defined on the business model were sent along with the metadata. One benefit of this feature would be that we wouldn't have to redefine error messages on the client side.

      54 votes
      Vote
      Sign in
      Check!
      (thinking…)
      Reset
      or sign in with
      • facebook
      • google
        Password icon
        I agree to the terms of service
        Signed in as (Sign out)
        You have left! (?) (thinking…)
      • Support executing arbitrary stored procedures within the transaction scope SaveChanges

        Support executing arbitrary stored procedures within the transaction scope SaveChanges

        [Or] allow some way of tying in to the transaction scope for any SQL

        21 votes
        Vote
        Sign in
        Check!
        (thinking…)
        Reset
        or sign in with
        • facebook
        • google
          Password icon
          I agree to the terms of service
          Signed in as (Sign out)
          You have left! (?) (thinking…)
        • Update samples to use typescript

          Provide samplese that use breeze and typescript

          18 votes
          Vote
          Sign in
          Check!
          (thinking…)
          Reset
          or sign in with
          • facebook
          • google
            Password icon
            I agree to the terms of service
            Signed in as (Sign out)
            You have left! (?) (thinking…)
          • Breeze clientside serialization of DateTimeOffset DataProperties

            Thanks for addressing my case about supporting the CLR DateTimeOffset type in breeze (supported from v1.1.1).

            Please look at this case for background information.

            I have looked into how serialization of JsDate/DateTime/DateTimeOffset works in Breeze, and found a single shortage that defeats my idea of using DateTimeOffset on the server.

            I believe that you will find my change suggestion reasonable.

            * In breeze, Dates are serialized in ISO-8601 format ("yyyy-MM-dd\\THH:mm:ss.fffK") both by the breeze client and by JSON.NET configured by Breeze.WebAPI.
            This is according to my expectations.

            * When a DateTimeOffset is serialized by JSON.NET on the server, the timezone…

            7 votes
            Vote
            Sign in
            Check!
            (thinking…)
            Reset
            or sign in with
            • facebook
            • google
              Password icon
              I agree to the terms of service
              Signed in as (Sign out)
              You have left! (?) (thinking…)
            • 18 votes
              Vote
              Sign in
              Check!
              (thinking…)
              Reset
              or sign in with
              • facebook
              • google
                Password icon
                I agree to the terms of service
                Signed in as (Sign out)
                You have left! (?) (thinking…)
              • Seperate out EFContextProvider

                I would like to start out by saying nice job on breeze. You guys have a breeze mvc webapi dll for those people doing .net. I really like the EFContextProvider, but I think it would be cool if it was a seperate project. This would allow users to use it in different class libraries to create repositories and a unit of work for the different models that you create and have one place to manage it. Keep it breezy, thanks

                92 votes
                Vote
                Sign in
                Check!
                (thinking…)
                Reset
                or sign in with
                • facebook
                • google
                  Password icon
                  I agree to the terms of service
                  Signed in as (Sign out)
                  You have left! (?) (thinking…)
                • Support using stored procedures for retrieving data in EF

                  Using a sp in EF5 and have mapped the output to a complex type. Breeze doesn't seem to like that there is no key column, and not sure how to mark one as key so querying causes an error.

                  24 votes
                  Vote
                  Sign in
                  Check!
                  (thinking…)
                  Reset
                  or sign in with
                  • facebook
                  • google
                    Password icon
                    I agree to the terms of service
                    Signed in as (Sign out)
                    You have left! (?) (thinking…)
                  • Propagate the .NET [RegularExpression] validation to the client

                    [RegularExpression] should join [Required], [MaxLength], [StringLength] as a DataAnnotations validation attribute automatically propagated to the Breeze client through metadata. It's powerful. It should be relatively easy as it is string-based and regular expression specifications are (almost) the same in .NET and JS. See also [this StackOverflow question](http://stackoverflow.com/questions/16383161/regular-expression-server-side-unrecognized-by-breeze)

                    2 votes
                    Vote
                    Sign in
                    Check!
                    (thinking…)
                    Reset
                    or sign in with
                    • facebook
                    • google
                      Password icon
                      I agree to the terms of service
                      Signed in as (Sign out)
                      You have left! (?) (thinking…)
                    • Integrate with KendoUI

                      I see Kendo doing work towards Breeze integration:

                      KendoUI datasource http://www.kendoui.com/blogs/teamblog/posts/13-02-21/breeze_js_and_the_kendo_ui_datasource.aspx

                      Kendo-labs repository
                      https://github.com/kendo-labs/breeze-kendo

                      Can I hope that Breeze will pick up the torch and make some integration progress as well?

                      3 votes
                      Vote
                      Sign in
                      Check!
                      (thinking…)
                      Reset
                      or sign in with
                      • facebook
                      • google
                        Password icon
                        I agree to the terms of service
                        Signed in as (Sign out)
                        You have left! (?) (thinking…)
                      • Asynchronous validation

                        I'd like a feature that will consent to perform asynchronous validation.
                        Actually, a custom validator like the one below will always return as undefined so a falsy value. It would be great valFunction will be evaluated after the db response.

                        function createExistingUsernameValidator() {
                        var name = 'existingUsernameValidator';
                        var ctx = { messageTemplate: 'Existing username', displayName: "Username" };
                        var val = new Validator(name, valFunction, ctx);

                        return val;

                        function valFunction(value, context) {
                        var result = ko.observable(true);
                        require('services/datacontext').getIsUserByUsername(value, result)
                        .then(function () {
                        debugger;
                        return !result();
                        });
                        }
                        }

                        5 votes
                        Vote
                        Sign in
                        Check!
                        (thinking…)
                        Reset
                        or sign in with
                        • facebook
                        • google
                          Password icon
                          I agree to the terms of service
                          Signed in as (Sign out)
                          You have left! (?) (thinking…)
                        • Expose a method on the EntityManager to "unwrap" an entity instance (toJS).

                          There are a few use cases where an entity instance needs to be sent to the server to an MVC API controller (for example for async server side validation); to do this, it is necessary to obtain an unwrapped version of the instance (plain JSON) that contains no internal properties such as entityAspect and uses properties instead of observables (ko.mapping.toJS is not suitable because of the former). Also, because the client configuration allows for a different naming convention, the method should be able to translate the names back to the naming convention originally used by the server.

                          Such a method…

                          11 votes
                          Vote
                          Sign in
                          Check!
                          (thinking…)
                          Reset
                          or sign in with
                          • facebook
                          • google
                            Password icon
                            I agree to the terms of service
                            Signed in as (Sign out)
                            You have left! (?) (thinking…)
                          • Support Swagger specification for metadata

                            Hi, the Swagger specs (https://developers.helloreverb.com/swagger/) looks like a good metadata provider for REST services.

                            If Breeze can leverage this, then it can potentially support much more web API implementations other than ASP.NET WebApi.

                            For example, ServiceStack supports the Swagger API via a feature (https://github.com/ServiceStack/ServiceStack/wiki/Swagger-API).

                            Cheers.

                            40 votes
                            Vote
                            Sign in
                            Check!
                            (thinking…)
                            Reset
                            or sign in with
                            • facebook
                            • google
                              Password icon
                              I agree to the terms of service
                              Signed in as (Sign out)
                              You have left! (?) (thinking…)
                            • adding ANY and ALL filter operators

                              It would be nice to filter on the properties of 1-n related enities. [Even if it is a collection of entites and not a single (1-1 related) entity.]

                              With my suggestion it would be possible to execute the following queries:

                              •find all movies starring a particular actor
                              •find all orders where at least one of the order-lines is for a particular product
                              •find all orders where every order-line has a value greater than $400
                              •find all movies tagged 'quirky' - where Tags is a multi-valued property.
                              •find all movies with a least one actor tagged as a favorite

                              It would…

                              1 vote
                              Vote
                              Sign in
                              Check!
                              (thinking…)
                              Reset
                              or sign in with
                              • facebook
                              • google
                                Password icon
                                I agree to the terms of service
                                Signed in as (Sign out)
                                You have left! (?) (thinking…)
                              • 4 votes
                                Vote
                                Sign in
                                Check!
                                (thinking…)
                                Reset
                                or sign in with
                                • facebook
                                • google
                                  Password icon
                                  I agree to the terms of service
                                  Signed in as (Sign out)
                                  You have left! (?) (thinking…)
                                • Integrate Breeze with FluentValidation

                                  I have used FluentValidation with mvc for some years now. And enjoy the excellent client side validation it's provide.

                                  Is there a way to use FV with Breeeze? I am about to refactor a part of an existing application to SPA ala HotTowel

                                  20 votes
                                  Vote
                                  Sign in
                                  Check!
                                  (thinking…)
                                  Reset
                                  or sign in with
                                  • facebook
                                  • google
                                    Password icon
                                    I agree to the terms of service
                                    Signed in as (Sign out)
                                    You have left! (?) (thinking…)
                                  • 5 votes
                                    Vote
                                    Sign in
                                    Check!
                                    (thinking…)
                                    Reset
                                    or sign in with
                                    • facebook
                                    • google
                                      Password icon
                                      I agree to the terms of service
                                      Signed in as (Sign out)
                                      You have left! (?) (thinking…)
                                    • Use websockets/signalr to push updated objects instantly out to the client cache

                                      On the client side, objects can get stale if they are frequently updated. Instead of requiring constant polling to see if entities have changed, allow updates to be pushed from the server out to the client cache. That change would in turn trigger knockout bindings so that the HTML instantly updates.

                                      112 votes
                                      Vote
                                      Sign in
                                      Check!
                                      (thinking…)
                                      Reset
                                      or sign in with
                                      • facebook
                                      • google
                                        Password icon
                                        I agree to the terms of service
                                        Signed in as (Sign out)
                                        You have left! (?) (thinking…)
                                      • Hybrid FetchStrategy

                                        A hybrid fetch strategy which first tries to execute a query locally then goes to the server if it fails or result count is 0. Different local and remote queries should be specifiable.

                                        1 vote
                                        Vote
                                        Sign in
                                        Check!
                                        (thinking…)
                                        Reset
                                        or sign in with
                                        • facebook
                                        • google
                                          Password icon
                                          I agree to the terms of service
                                          Signed in as (Sign out)
                                          You have left! (?) (thinking…)
                                        • 1 vote
                                          Vote
                                          Sign in
                                          Check!
                                          (thinking…)
                                          Reset
                                          or sign in with
                                          • facebook
                                          • google
                                            Password icon
                                            I agree to the terms of service
                                            Signed in as (Sign out)
                                            You have left! (?) (thinking…)
                                          ← Previous 1 3 4
                                          • Don't see your idea?

                                          Breeze Feature Suggestions

                                          Feedback and Knowledge Base