add feature: profile page, public and private