Migration plan

We believe that iterative migration is the best way to go. The long-term goal is to phase-out Ember Data in favor of Redux.

General Strategy
  • Prove out redux-query (done)

  • Move vishnu-frontend to toranb's ember-redux

  • Add redux-query to vishnu

  • Add schemas/models to vishnu if necessary (this is likely unnecessary).

  • Prod Infra converts one feature over and documents process.

  • Product converts one feature over, Prod Infra works closely to ensure it's solid.

  • Prod Infra improves documentation based on feedback.

  • Teams convert features over using our guides

We should aim to have the majority of our Grow and Maintain Value features converted within 12 months (maybe less maybe more). We believe the ROI for this effort will be noticeable and will propel the change much like it did for Slate. Typical steps in converting features will look like:

  • Add a reducer for the feature

  • Setup the initial state for the feature

  • Fetch data using redux-query and our query-builder (very much like Query Expressions)

  • Update views to work with pojo's. They mostly do already.

  • Convert computed properties to selectors (using reselect)

  • Move model mutation logic from routes and actions into reducers

  • Test the reducers

  • Work out any overlap with non-redux code. We'll have strategies in place to identify and manage this.

Most of these steps will feel like a simplification and clarification of the codebase. Especially for devs how have done it once or twice. They are generally low-effort tasks.

What stays the same:
  • Most of the view code

  • Most of the CSS

  • The overall routing structure

  • The component hierarchy

results matching ""

    No results matching ""