I started using Linux about two years ago, but only began seriously learning Bash recently. After practicing basic conditionals, I built my first larger script, a project called MemiBank. The transfer functionality is nearly finished, and I'd appreciate constructive feedback on the script's structure, maintainability, and overall Bash practices. What would you improve or approach differently?
4 Answers
For a simple interactive menu, Bash already provides the built-in select construct. It can handle numbered choices and reduce the amount of custom menu code you need to maintain. Just make sure invalid input is handled clearly and avoid printing messages that could encourage unsafe password habits.
Consider adding a configuration file with sensible defaults. You could also let users provide a custom config path as a command-line argument instead of hard-coding paths directly into the script.
This is a solid start for a first project. You may also want to use a dispatch-style structure, where each command or menu action calls its own function or script. Keeping the components small will make future development and maintenance much easier.
A good next step would be breaking the script into functions and separating larger pieces of logic into smaller modules or files. That will make the project easier to read, debug, test, and extend as it grows.

Related Questions
How To: Running Codex CLI on Windows with Azure OpenAI
Set Wordpress Featured Image Using Javascript
How To Fix PHP Random Being The Same
Why no WebP Support with Wordpress
Replace Wordpress Cron With Linux Cron
Customize Yoast Canonical URL Programmatically