🔐 Caesar Cipher

A beginner-friendly Python program that encodes messages with the Caesar cipher.

📚 Table of Contents

🧭 Overview

The Caesar cipher shifts every letter by a fixed number of places (with a shift of 3, E becomes H). This project, from Udemy's 100 Days of Code: The Complete Python Pro Bootcamp (Day 8), finds letter positions with list.index and wraps around the alphabet with the modulo operator. Part 1 covers encryption; decryption and a combined program follow in later parts. Code lives in src/, tests in tests/, docs in docs/.

📋 Requirements

  • Python 3.13 or newer
  • pytest (development only; no runtime dependencies)
  • Optional: Doxygen to build the API docs

🛠️ Setup

Create and activate a local virtual environment, then upgrade pip and install the project:

python -m venv .venv

Activate it:

# Linux / macOS
source .venv/bin/activate
# Git Bash on Windows
source .venv/Scripts/activate
# Windows PowerShell
.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
python -m pip install -e ".[dev]"

▶️ Run

python -m caesar_cipher

or, after installation, caesar-cipher.

🧪 Tests

python -m pytest

Build the API docs with doxygen Doxyfile (output in docs/doxygen/html).

📄 License

GNU AGPL-3.0 – see LICENSE.

S
Description
Caesar cipher in Python: encode and decode messages. Udemy 100 Days of Code, Day 8.
Readme AGPL-3.0
63 KiB
Languages
Python 100%