diff --git a/src/App.tsx b/src/App.tsx
index f819cbdb9..f308df78b 100644
--- a/src/App.tsx
+++ b/src/App.tsx
@@ -1,7 +1,37 @@
import React from 'react';
-export const App: React.FC = () => (
-
-
The last pressed key is [Enter]
-
-);
+type State = {
+ pressedKey: string
+};
+
+export class App extends React.PureComponent<{}, State> {
+ state: State = {
+ pressedKey: '',
+ };
+
+ componentDidMount(): void {
+ document.addEventListener('keyup', this.handlePressKey);
+ }
+
+ componentWillUnmount(): void {
+ document.removeEventListener('keyup', this.handlePressKey);
+ }
+
+ handlePressKey = (event: KeyboardEvent) => {
+ this.setState({ pressedKey: event.key });
+ };
+
+ render() {
+ const { pressedKey } = this.state;
+
+ return (
+
+
+ {pressedKey
+ ? `The last pressed key is [${pressedKey}]`
+ : 'Nothing was pressed yet'}
+
+
+ );
+ }
+}