|Description||Chronological history for two users on pages where they have both made edits.
|Maintainer(s)||Anti-Harassment Tools (View all)|
|License||GNU General Public License 3.0|
|Issues||Open tasks · Report a bug|
The Interaction Timeline shows a chronological history for two users on pages where they have both made edits. The original development plan can be found on meta.
The tool is a React application that uses Redux for state management and Redux Observable for side effects. It attempts to do as much as it can on the client or by using MediaWiki's API directly. Unfortunately, MediaWiki's API does not provide a mechanism to query two users and get a single contribution history. A small PHP application using Slim was created to query the Toolforge Replicas.
During deployment, the
server application which handles the custom API requests. The tool uses the PHP Kubernetes backend in order to use a newer version of PHP then what is available on the tool itself. Likewise, the
client application use the Node Kubernetes backend in order to use a newer version of Node.js.
Redux & Redux Observable
Since the release of React 16.8, it has been possible to use a reducer for state management without using another library. Likewise, side effects can be handled with React's useEffect hook. It seems wise to remove Redux and Redux Observable and replace them with the native React alternatives (See T226995). This would also mean moving away from class-based React components to functional components since only functional components support Hooks.