A CLI application that simulates a role-based access control system for a secure facility
Implements a publish-subscribe event system where devices and other components emit events, and handlers subscribe to specific event types or severity levels and react accordingly.
Manages all personnel associated with a facility — employees, visitors, and contractors — tracking who they are, what their role is, and whether they are currently on-site.
Built around immutable state transitions, exact `Decimal` money, bounded change-making, JSON persistence, reports, and repeatable customer simulation
Analyzes categorized transactions, finds patterns & detects anomalies
Expense Categorizer - Reads a bank statement, for each transaction, uses a dictionary-based rule engine to auto-categorize
Reads Apache/Nginx-style server logs (or any structured log format). Parses each line with RegEx to extract timestamp, IP, method, URL, status code, and response size. Counts errors by category (4xx, 5xx), identifies the top offending IPs, flags suspicious patterns (brute-force attempts, path traversal), and outputs a clean summary report.
Given a dollar amount, it calculates the fewest bills and coins needed.
A terminal countdown timer built as a small Python package. It supports compact, colon, and natural duration input, multiple sequential timers, presets, JSONL session logs, completion notifications, and an interactive keyboard-driven UI.
Word Counter is a streaming-first Python CLI for counting words and producing text statistics from plain text, Markdown, HTML, JSON, DOCX, and PDF sources
Determines if two strings are anagrams—rearrangements of the same letters—by verifying they have identical character frequencies
PyClock is a terminal digital clock: immutable domain objects, injectable time sources, renderer strategies, threaded input, persisted alarms, and a small standard-library CLI.