1. BreezeJS 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.

How can we improve Breeze.js?

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. Enable bugtracking on GitHub

    The Breeze GitHub readme says, "The GitHub Issues and Wiki have been disabled. Please post all questions and issues to StackOverflow tagged with breeze." The problem is that for plain old bugs (vs. more conceptual questions and problems), StackOverflow is the wrong place. Bug reports would be rightfully be closed as too localized or off topic.

    For example, consider the bug that the documentation for initializeAdapterInstance (http://www.breezejs.com/sites/all/apidocs/classes/config.html#method_initializeAdapterInstance) says that isDefault is optional, yet the TypeScript file breeze.d.ts says that isDefault is required. It would be good to have proper place to report such a bug.

    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…)
      completed  ·  0 comments  ·  Admin →
    • Typo in documentation

      http://www.breezejs.com/documentation/metadata-by-hand

      "Boiler plate" section:
      ```
      The addTrack method didn't pop out of thin air. In fact it is a convenience wrapper around one of the Metadata-Helper methods.
      ```

      "addTrack" should be "addType". The "addTrack" function is shown in the appropriate code block. The "addType" function is the helper method.

      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…)
        completed  ·  0 comments  ·  Admin →
      • Error in docs

        the isAddedModifiedOrDeleted() says "Whether an entityState instance is EntityState.Unchanged or EntityState.Modified or EntityState.Deleted." it should say "Whether an entityState instance is EntityState.Added or EntityState.Modified or EntityState.Deleted"

        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…)
          completed  ·  0 comments  ·  Admin →
        • Support .withParameters for OData (datajs)

          The current implementation of withParameters() only sends those parameters to the XHR implementation, but it does not pass them to the OData provider. The fix is simple, but it's not supported yet. Please implement!

          26 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…)
            completed  ·  0 comments  ·  Admin →
          • Which libraries for Java on Github

            Hi,

            I see 3 branches of Breeze support Java on github. What is different?
            The Json-UriBuilder Branches is look fully. I'm intergrating breezejs with java spring and hibernate to use with AngularJS.

            Thanks

            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…)
              completed  ·  2 comments  ·  Admin →
            • Allow access to angular config in httpResponse object

              Pull Request: https://github.com/Breeze/breeze.js/pull/126

              Angular $httpInterceptors can be used for timing requests, or sequencing requests by adding information to the config programmatically.

              Breeze should allow access to this information through its httpResponse object.

              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…)
                completed  ·  0 comments  ·  Admin →
              • Make it easier to create custom DataTypes

                I've been able to write a custom DataType implementation for Moment.js but am stuck in places where the equality of two instances of the DataType is evaluated.

                Currently, there are a number of lines of code which specifically handle Dates differently because of their inability to be compared using ===. For instance, in a35_defaultPropertyInterceptor.js:

                // exit if no change - extra cruft is because dateTimes don't compare cleanly.
                if (newValue === oldValue || (dataType && dataType.isDate && newValue && oldValue && newValue.valueOf() === oldValue.valueOf())) {
                return;
                }

                However, that means if I want a custom DataType, and need a custom…

                6 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…)
                  completed  ·  2 comments  ·  Admin →
                • Fix online tutorial

                  Hi guys,

                  just to let you know that the online tutorial doesn’t work anymore.
                  Error: metadata query failed, it says … I suppose there are some issues with the web api at api/nortwind.

                  Ciao,
                  Emiliano

                  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…)
                  • 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…)
                      1 comment  ·  Admin →
                    • 53 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…)
                        1 comment  ·  Admin →

                        Breeze o.84.4 adds TypeScript support.

                        The zip packages now include a TypeScript directory with a “breeze.d.ts” file that supports the complete breeze api.

                      • Support for PHP and MySQL

                        Support a PHP connector for MySQL. This is one of the most often used data connections.

                        404 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…)
                        • Add client NuGet packages

                          Add a NuGet package which installs the scripts necessary for a breeze client app.

                          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…)
                            completed  ·  2 comments  ·  Admin →
                          • There should be an AfterSaveEntity

                            Why isn't there also an AfterSaveEntity.
                            For example would be very useful for sending notifications (emails, messages) once a bigger operation is done.
                            Also everything should be done inside a transaction, so that if something crashes it should automatically Rollback

                            16 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…)
                            • camelCase translation option for entity properties defined as PascalCase on server

                              Look at the case of the first letter of bound property and behave differently if upper case

                              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…)
                              • Named save

                                Route a save request to a different save method on the server (on the controller).

                                23 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…)
                                  1 comment  ·  Admin →

                                  Breeze 1.3 adds named saves.

                                  By default the EntityManager.saveChanges method sends a save request to an endpoint called “SaveChanges”. With “Named Save”, you can target a different server endpoint such as an arbitrarily named action method on another Web API controller. There are two new properties on the SaveOptions class. A resourceName (for the action method) and a dataService (for targeting a different controller).

                                  http://www.breezejs.com/documentation/download

                                • Support for query parameters

                                  Something like

                                  var query = new EntityQuery()
                                  .from("CustomersStartingWith");
                                  query.parameters.add("A");

                                  10 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…)

                                    Build 0.76.2 adds a new EntityQuery method: withParameters.

                                    This method allows custom parameters to be passed to any server side method, in addition to those that Breeze uses for its normal querying. Custom parameters can be mixed in with other query clauses.

                                    For example:

                                    var query = EntityQuery.from(“EmployeesFilteredByCountryAndBirthdate”) .withParameters({ BirthDate: “1/1/1960”, Country: “USA” }) .where(“LastName”, “startsWith”, “S”) .orderBy(“BirthDate”);
                                  • Attribute on controller actions to limit result size

                                    Add an attribute that can be placed on a Web API controller action to limit the number of entities that can be returned in this query.

                                    13 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…)
                                    • Attributes on controller actions to block the use of Select and Expand

                                      Define attributes that block the use of Select and Expand.

                                      13 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…)
                                        1 comment  ·  Admin →

                                        Attributes for blocking Select and Expand were added a few builds ago, but we’re marking it complete on UserVoice today. Sorry for the delay.

                                        Breeze 1.3.1 is now available, including Inheritance and OData writes/saves.

                                      • Naming convention for mapping metadata names

                                        A mapper should accept filters that can do the mapping automatically. CamelCasing is one such filter. Another might do something nice with stuff like "First_Name", "Last_Name", etc.

                                        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…)
                                        • Metadata name mapper for the client

                                          Add a mapping mechanism in the metadata on the client that lets us have the names we want.

                                          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?

                                          1. BreezeJS Feature Suggestions

                                          Feedback and Knowledge Base