In this capstone, you will create an application called TomeRater that allows users to read and rate books. The purpose of this capstone is to practice implementing and testing classes in Python. You will be given specifications for methods for 5 different classes that interact with each other. To create these methods you will use your knowledge of lists, loops, dictionaries, strings, control flow, and of course, basic Python syntax! If you need to refresh your memory of these concepts, go back to these lessons in the syllabus.
Run populate.py to test functionality of the classes in TomeRater.py. There are two lines in populate.py that can be uncommented to test error messages for adding a user with an invalid e-mail address and attempting to create a Book instance with an existing ISBN.