Coding Challenge for Tovia Submission by Jason Kim
- Install dependencies:
npm install
- Open a terminal window and start server:
npm start
- In a separate terminal window, execute bundle command:
npm run bundle
- Open in browser at specified port (default port: 1337). For example,
localhost:1337
or127.0.0.1:1337
To run ESLint on the client files: npm run lint
Encryption
- Fill out all fields (Name, Message, Date)
- Generate new Passphrase (optional) - by default, a random passphrase will generate upon page load
- Click the "Encrypt" button to receive the encrypted message code
- Click on the passphrase to copy to clipboard
Decryption
- Visit the URL with the passphrase in the following format:
localhost:1337/#<passphrase>
- The passphrase at the bottom of the page should use the hashed passphrase key
- Click the "Decrypt" button and then paste the code received in the previous step
- Click the "Decrypt" button in the pop up dialog box to load the message
NOTE: Messages with invalid codes or expired dates will NOT be decrypted
GIF Example
React
Babel
Webpack
React Toolbox
Bootstrap 4
React Copy-to-Clipboard
Crypto
ESLint