A Streamlit app for playing with Caesar ciphers.
Deployed at https://caesar.streamlit.app, with a big TY to Streamlit Community Cloud!
Basic flow.
Set up something like the following:
- Install Pipenv.
pipenv shellto activate virtual environment.pipenv installto install dependencies from Pipfile to virtual environment.streamlit run app.py
NOTE: Streamlit's install docs no longer prescribe Pipenv (above link anchor is gone too), but leaving instructions intact as they still work to quickly get started (especially on GitHub Codespaces).
Run unit tests like this:
$ pytest
================================================================== test session starts ===================================================================
platform linux -- Python 3.12.1, pytest-9.0.1, pluggy-1.6.0
rootdir: /workspaces/caesar-cipher
plugins: anyio-4.11.0
collected 18 items
test_caesar.py ............. [ 72%]
test_textutil.py ..... [100%]
=================================================================== 18 passed in 0.03s ===================================================================- "Streamlit: The fastest way to build and share data apps". Streamlit. https://streamlit.io/.
- "Community Cloud: Deploy, manage, and share your apps with the world, directly from Streamlit -- all for free". Streamlit. https://streamlit.io/cloud.
- "Serious Cryptography". Aumasson, JP. No Starch Press, 2018.
- "ROT13". Wikipedia, https://en.wikipedia.org/wiki/ROT13.
- "Substitution cipher". Wikipedia, https://en.wikipedia.org/wiki/Substitution_cipher.
- "Secret Key Cryptography: Ciphers, from simple to unbreakable". Rubin, F. Manning Publications Co., Aug 2022.
- "Cryptography Terms for Kids: A Parent's Guide to Teaching the Language of Secret Codes". Kubrio, Nov 2025, https://kubrio.com/skills/cryptography/resources/cryptography-terms-for-kids-parent-guide.
