copied from book_widget_app