this commit also adds a `useDiscover` hook to help with creating discover pages with less repeating code