Add optional bookshelf requirement