reactrewind / react-rewind

Time Travel Debugger for React useReducer

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Rewind: A Time Travel Debugger for React useReducer

PRs Welcome License: MIT Release Beta

Designed to help engineers fix bugs faster by recording and replaying through different states of their applications. Debug your app more easily by “rewinding” your session instead of having to wait to reproduce the issue once you find the problem.

  • Press record and start interacting with your application.
  • Each dispatched action will be stored as a unique event in time.
  • Rewind through your recorded actions with the back button or by dragging the slider.
  • Analyze the state, the effects and the action object of every dispatched event.
  • Press play and watch your app change!

React Rewind is in active development. Follow this repo for contribution guidelines.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

You must use an unminified version of React. Also, your application must be using the hook useReducer for actions to be recorded.

Installing

You can install it from the Chrome Web Store.

To install locally, setup instructions are as follows:

  1. git clone --single-branch --branch beta-release https://github.com/reactrewind/react-rewind.git
  2. Visit the URL chrome://extensions/
  3. Click Load Unpacked button and select the folder react-rewind/chrome
  4. On your application page, open the Chrome Developer (Ctrl + Shift + J / Mac: Cmd + Option + I) tools and select React Rewind from the tool bar
  5. Click Record and begin interacting with your application

As you interact with your application, actions will populate the events panel. Click on these actions to view more details about them, such as the action object that was dispatched, the effects or state difference, and the whole state of the application after the dispatch. The time slider panel allows you to rewind, fast forward, and play through all recorded actions.

Application Features

Field Description
events action types and time since last dispatch
actions the action object that was dispatched
effects difference between the states before and after the action was dispatched
state the state object after the action was dispatched

Contributing

Please fork this repo. We welcome pull requests. For suggestions or to report bugs please log an issue.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Authors

Brandon Murphy | Victor Varaschin | Kia Colbert | Gaber Mowiena

License

This project is licensed under the MIT License - see the LICENCE.md file for details