Leveraging Sismo and XMTP, Harpos is a social network centered on privacy and anonymity where users can choose multiple criteria to select who they want to connect with.
The name Harpos, draws inspiration from Horus Harpocrate, the child-like representation of Horus in Egyptian mythology, with his finger placed on his lips, symbolizing strong privacy and anonymity.
Harpos is a unique social network that grants users the option to remain completely anonymous, made possible through the implementation of Zero Knowledge proofs enabled by Sismo, as well as the utilization of the XMTP messaging protocol.
Upon joining our platform, user logs in via Sismo's SSO, and create a ZK proof attesting the amount of USD stablecoins they possess. Additionally, they have the option to generate another ZK proof demonstrating their number of Twitter followers, which serves as proof of their influence.
During their profile creation, users specify the languages they speak, their country of residence, skills, interests, their current goals, and a chosen handle. Subsequently, they can search for other users based on their desired criteria (profile criteria, amount of USD stablecoins held, number of Twitter followers, etc.). Following the search, users can exclusively engage in private chats (powered by XMTP) with those whose criteria align with their preferences.
The driving force behind Harpos stems from recognizing certain challenges prevalent in other social networks, including bot interactions, unsolicited sales pitches, and connections with individuals who do not share genuine interests. By empowering users to connect directly with like-minded individuals, based on their chosen criteria and ensuring the authenticity of their contacts, we aim to address these pain points.
To summarize, Harpos offers distinct advantages, including "Efficiency in networking," "Authenticity," and "Privacy".
Harpos' frontend is developed using TypeScript, VueJS, and Nuxt. In contrast, the backend is implemented as a REST API using NestJS. To facilitate profile matching, we have chosen to utilize a centralized database. However, we envision the possibility of leveraging IPFS for uploading profile data and utilizing a centralized database with a CRON job for synchronization, thereby indexing this information for faster processing.
Our trust-building capabilities rely on Sismo technology. We have extensively explored their SDK to personalize our requests through optional claims, enabling users to select values that our backend can access and retrieve information from.
To ensure user anonymity, we create a wallet for each user, which serves as an XMTP proxy, effectively concealing their EOA. For an added layer of security, we encrypt their private key using a passphrase of their choice and store it securely in the database.