I will sometimes act in Community Theater, and I've found a pretty good system for learning not only my lines, but also my cues (i.e., the line that occurs before it is your character's turn to speak). My system involves recording myself saying all lines (both mine and those of other characters), and then playing it back while rehearsing. If I don't know my line, I can just listen to the recording or look at the script. As I get better, I will tweak settings (repeat one scene multiple times, lower my character volume, increase playback speed, etc).
Of course, this requires a bunch of effort making recordings, altering the volumes and speeds, etc. Off book, one cue is my attempt at automating this system, while also learning HTML5 APIs, offline web apps, Svelte, and Tailwind. Unfortunately, due to a lack of test devices, I have not been able to get it working on Apple mobile devices quite yet.