LEAFBANK is a modular C-based command-line banking application that provides user authentication, account management, and financial transaction processing backed by flat-file data persistence. The system uses an interactive menu driven by main.c and menu.c, employing rigorous input validation (validation.c) to sanitize numeric and string inputs against issues like buffer overflows. It handles full account lifecycles—including unique 10-digit ID registration, profile updates, status toggling, and single or batch deletions based on a zero-balance requirement, inactivity, or creation date—while dynamic memory allocation (realloc) scales account records parsed from CSV files. Monetary operations in transaction.c enforce balance checks, transaction caps ($10,000 per deposit/withdrawal), and daily withdrawal limits ($50,000), logging every action into account-specific files used to generate mini-statements of the last five transactions. Finally, the platform incorporates basic algorithms, utilizing linear search (O(N)) for exact ID and keyword name lookups, alongside bubble sort O(N^2) to display client directories ordered by name, balance, creation date, or account status.