Here is my implementation of your test case. All comments which needed here (from my point of view) placed within code
But one thing is confusing to me - why do you divide /app_client and /public? Main task is writing backend part - so I just add /lib to /app_client but I still want to know why :)
Hope to hear from you soon!