Hi Tom,
Welcome to the community
You would need a number property in the lessons collections as a ID. And once you adding the lessons add the IDs too. Like Lesson 1 - 1 , Lesson 2 - 2 etc.
Then you can create a many to many relationship between the users collection and the lessons collection ( 3rd option when creating the relationship ). You can name the relationship created on the lessons collection like listened users and for the relationship created in the users collection you can name it as like listened lessons.
Then you can add a custom list to the home screen and connect it to the lessons collection and add a custom filter that Listened Users > Does not contains > Logged in user. And in the list set the maximum number of items to 1.
And you can add a button to the list and in the button you can add a Update current lesson action that add logged in user to the Listened Users relationship.
You can do this using another collection that create a record in that collection and making the conditions but this way will be easier!
And this app created by @Yongki will help you too! : Tinder app functions (Like, Dislike, Match) using list with filters - #9 by Yongki Same like this but it’s for users.
Hope this helps!
Thank you