You're planning a surprise birthday party for a friend who loves escape rooms and puzzles. What better way to practice your new coding skills than to build an application that will help you encode and decode all kinds of fun messages?
- Functions to develop both encoding and decoding
- Caesar Shift
The Caesar shift is a type of substitution cipher originally used by Julius Caesar to protect messages of military significance. It relies on taking the alphabet and "shifting" letters to the right or left, based on the typical alphabetic order.
- Polybius Square
The Polybius square is a cipher that is achieved by arranging a typical alphabet into a grid. Each letter is represented through a coordinate.
- Substitution Cipher
The substitution cipher requires a standard alphabet and a substitution alphabet. Letters from the standard alphabet will be transposed to the standard alphabet. This cipher requires that the recipient have the substitution alphabet, otherwise it will be difficult for them to decode the message.
- Write a series of unit tests using Mocha and Chai
- Try following a Test Driven Development process
- use different expect() methods to test code
- ../src/caesar.js
- ../src/polybius.js
- ../src/substitution.js
- ../test/caesar.test.js
- ../test/polybius.test.js
- ../test/substitution.test.js