Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jlee55504/decoder-ring-project
A web application that uses 3 different ciphers (Caesar, Polybius square, and substitution) to encode/decode messages.
https://github.com/jlee55504/decoder-ring-project
bootstrap chai css git gitbash github html javascript software-engineering web-application web-development
Last synced: about 4 hours ago
JSON representation
A web application that uses 3 different ciphers (Caesar, Polybius square, and substitution) to encode/decode messages.
- Host: GitHub
- URL: https://github.com/jlee55504/decoder-ring-project
- Owner: jlee55504
- Created: 2024-02-12T02:52:00.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-01-11T03:22:42.000Z (2 days ago)
- Last Synced: 2025-01-11T04:27:10.519Z (2 days ago)
- Topics: bootstrap, chai, css, git, gitbash, github, html, javascript, software-engineering, web-application, web-development
- Language: JavaScript
- Homepage: https://jlee55504.github.io/Decoder-ring-project/
- Size: 315 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Decoder Ring Project
A web application that uses 3 different ciphers (Caesar, Polybius square, and substitution) to encode/decode messages.
## Features
- **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 instruction on how to use the application.
- **Error Handling:** Robust error handling for enhanced reliability.## Technologies Used
* **JavaScript:** Core programming language (JavaScript ES6)
* **HTML:** Visually displays the content of the application
* **Bootstrap:** Provides visual styling for the application
* **Chai:** Unit testing framework## Screenshot
![Alt text](https://github.com/jlee55504/Decoder-ring-project/blob/main/imgs/Caesar%20cipher%20image.png?raw=true "The Caesar cipher")
## Getting Started
### Prerequisites
- Live Server Package
- Visual Studio Code
- Node Package Manager (NPM)### Installation
1. Clone the repository:
```
git clone https://github.com/jlee55504/Decoder-ring-project.git
```
2. Navigate to the project directory:
```
cd Decoder-ring-project
```
3. Build the project:
```
npm install
```
4. Run the application:
```
npm start
```## Usage
Upon running the application, you'll be presented with 3 different ciphers:
1. Caesar Shift
2. Polybius Square
3. SubstitutionFollow 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.
## Code Structure
- **index.html:** Main application entry point
- **src/caesar.js:** Handles the Caesar Shift cipher functionality
- **src/polybius.js:** Handles the Polybius Square cipher functionality
- **src/substitution.js:** Handles the Substitution cipher functionality## Acknowledgments
- 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