Skip to content

Repository files navigation

classical-ciphers

Encode and decode classical ciphers in your terminal, updated live as you type.

Vigenère cipher in classical-ciphers

More examples

Rail fence cipher in classical-ciphers

Run

go run .

Or build a binary with go build -o classical-ciphers . and run ./classical-ciphers.

Usage

Type a message and the output updates on every keystroke. Use ctrl+n and ctrl+p to move between ciphers. Use ctrl+r to switch between encoding and decoding. Press tab to move focus to the key field for ciphers that take a key.

Atbash and rot13 need no key. Three ciphers read the key field. Caesar treats it as a numeric shift. Vigenère uses it as a keyword. Rail fence interprets it as a number of rails. Letters keep their case, and characters that are not letters pass through unchanged.

esc or ctrl+c quits.

Disclaimer

These are historical ciphers meant for learning and for fun. They offer no real security and can be broken quickly with well-known techniques. Do not use them to protect anything sensitive. For real encryption, reach for a vetted modern library instead.

License and contributing

Licensed under the MIT License (see LICENSE). Contributions are welcome; see CONTRIBUTING.md.

Citation

If you use this project, please cite it. A machine-readable CITATION.cff is included; expand below for a BibTeX entry.

BibTeX
@software{Vulpes_classical-ciphers_2026,
  author  = {Vulpes, Aesthetic},
  title   = {classical-ciphers},
  year    = {2026},
  month   = jul,
  version = {0.1.0},
  url     = {https://github.com/tui-apps/classical-ciphers}
}

Related

Part of the tui-apps collection

Six small, single-purpose terminal apps.

App What it does
calc live calculator
algebra-visual function grapher
classical-ciphers cipher encoder and decoder (this repo)
crypto-charts crypto price charts
totp TOTP authenticator
life Conway's Game of Life

Related projects

  • lpchart — Chart InfluxDB line protocol in your terminal. Browse measurements, fields and tag sets interactively without knowing what is in the file first.
  • nimo — nano-inspired terminal text editor written in pure Nim.
  • life — Animated Conway's Game of Life in your terminal (Go, Bubble Tea)
  • totp — Terminal TOTP authenticator: live 2FA codes with countdown (RFC 6238, Go, Bubble Tea)
  • crypto-charts — Terminal crypto price charts: top coins and price history from the free CoinGecko API (Go, Bubble Tea)
  • calc — Live terminal calculator: evaluates arithmetic as you type, no Enter key (Go, Bubble Tea)
  • algebra-visual — Live terminal function grapher: plot y = f(x) as you type (Go, Bubble Tea, ntcharts)

About

Encode and decode classical ciphers in your terminal, live as you type (Atbash, Caesar, Vigenère, Rail Fence)

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages