Skip to content

sen-ltd/caesar-cipher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Caesar Cipher — Classical Cipher Tool

A static, zero-dependency web tool implementing five classical ciphers with brute-force decryption and letter frequency analysis.

Live demo: https://sen.ltd/portfolio/caesar-cipher/

Features

  • Caesar — shift each letter by N positions (slider 0–25)
  • ROT13 — Caesar shift 13; applying twice restores original
  • Vigenère — polyalphabetic cipher using a keyword
  • Atbash — alphabet reversal (A↔Z)
  • Rail Fence — zigzag transposition with N rails
  • Encode and decode for all ciphers
  • Brute force Caesar — view all 26 shifts at once; click a row to apply
  • Letter frequency analysis — chi-squared against English frequencies to suggest the best shift
  • Japanese / English UI
  • Dark / light theme

Setup

No build step required. Open index.html directly in a browser, or run:

npm run serve   # python3 -m http.server 8080

Then visit http://localhost:8080.

Tests

npm test        # node --test tests/*.test.js

Project structure

caesar-cipher/
├── index.html          # App shell
├── style.css           # Styles (light & dark theme)
├── src/
│   ├── main.js         # DOM, event wiring
│   ├── ciphers.js      # Pure cipher implementations
│   └── i18n.js         # JA/EN translations
├── tests/
│   └── ciphers.test.js # 30+ unit tests
├── assets/             # Screenshots and media
└── package.json

License

MIT — Copyright (c) 2026 SEN LLC (SEN 合同会社)

Links

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors