A web application that uses 3 different ciphers (Caesar, Polybius square, and substitution) to encode/decode messages.
- Caesar Shift Cipher: Uses a number to shift/unshift letters based on the number.
- Polybius Square Cipher: A cipher that arranges the alphabet into a grid, with each letter being assigned a number.
- Substitution Cipher: Uses 26 different characters to create a "substitution" alphabet to encrypt/decrypt messages.
- User-friendly Interface: Easy to use interface with clear instructions on how to use the application.
- Error Handling: Robust error handling for enhanced reliability.
- JavaScript: Core programming language (JavaScript ES6)
- HTML: Visually displays the content of the application
- Bootstrap: Provides visual styling of the application
- Chai: Unit testing framework
- Node Package Manager (NPM)
- Clone the repository:
git clone https://github.com/jlee55504/Decoder-ring-project.git
- Navigate to the project directory:
cd Decoder-ring-project
- Build the project:
npm install
- Run the application:
npm start
Upon running the application, you'll be presented with 3 different ciphers:
- Caesar Shift
- Polybius Square
- Substitution
Follow the instructions for each cipher, choose either the "encode" or "decode" button, enter your message in the "Your message" space, and click the "Submit" button.
index.html:
Main application entry pointsrc/caesar.js:
Handles the Caesar Shift cipher functionalitysrc/polybius.js:
Handles the Polybius Square cipher functionalitysrc/substitution.js:
Handles the Substitution cipher functionalityimgs/:
Contains the screenshots of the application
- This project was built for the Chegg Skill's software engineering program
- I went beyond Chegg Skill's coding requirements by writing code for the Polybius Square cipher that maintains spaces in messages and displays a message along with instructions if incorrect characters are used