A modern web-based encryption tool that allows users to encrypt and decrypt text using three classical cipher techniques: Caesar, Vigenère, and Playfair. Built with a sleek and user-friendly graphical interface, this project makes classical encryption accessible and easy to use.
Live Demo
Experience the tool live here: Classical Ciphers
Table of Contents
About the Project
This project provides an intuitive GUI that enables users to encrypt and decrypt text using three different classical ciphers:
- Caesar Cipher – A simple substitution cipher that shifts each letter in the plaintext by a fixed number of positions.
- Vigenère Cipher – A polyalphabetic substitution cipher that uses a repeating keyword to determine shifting values.
- Playfair Cipher – A digraph substitution cipher that encrypts text using a 5x5 grid generated from a keyword.
The application allows users to select a cipher, enter text, provide necessary key inputs, and obtain encrypted or decrypted results instantly.
Features
- User-friendly dark-themed graphical interface with a modern look.
- Supports encryption and decryption for Caesar and Vigenère ciphers.
- Playfair cipher supports encryption only.
- Instructions section to guide users.
- Fully responsive design.
- Built using React.js and Tailwind CSS.
Technologies Used
- React.js – Frontend framework for building the user interface.
- Tailwind CSS – Styling framework for responsive and modern design.
- JavaScript (ES6+) – Core logic for encryption and decryption algorithms.
- Netlify – Deployment platform for hosting the web application.

Installation
To run this project locally, follow these steps:
- Clone the repository:
git clone https://github.com/your-username/your-repo.git
- Navigate to the project directory:
cd classical-ciphers
- Install dependencies:
npm install
- Start the development server:
npm start
Usage
- Select a cipher type (Caesar, Vigenère, or Playfair).
- Enter the text you want to encrypt or decrypt.
- For Caesar Cipher, enter a shift value (number).
- For Vigenère/Playfair Ciphers, enter a keyword.
- Click the Encrypt or Decrypt button to see the result.
- The Playfair cipher currently supports encryption only.
Contributing
Contributions are welcome! To contribute:
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch
).
- Make your changes and commit (
git commit -m 'Add new feature'
).
- Push to the branch (
git push origin feature-branch
).
- Open a Pull Request.
License
This project is licensed under the MIT License.
Feel free to modify this README to better fit your project's needs!