Developers Forum for XinFin XDC Network

Cover image for [Hackverse] SocialX
Ankit Gupta
Ankit Gupta

Posted on

[Hackverse] SocialX

Project Name : SocialX

Tagline :

"Don't let Mark Zuckerberg decide what you see and say."

Problem it solves :

SocialX: Empowering Users through Decentralization

SocialX is a groundbreaking decentralized application (dApp) built on Ethereum's Sepolia test network blockchain. It addresses three critical problems:

1) Censorship and Content Control
Solution: By adopting a decentralized architecture, SocialX eliminates central authority control, enabling free expression and safeguarding against content removal and censorship.

2) Data Ownership and Lack of Privacy
Solution: SocialX utilizes decentralized storage (IPFS) to give users control over their data. This ensures privacy, reduces data breach risks, and removes the need for centralized data control.

3) Single Point of Failure of Central Servers
Solution: SocialX's peer-to-peer network architecture replicates and stores content across multiple nodes, guaranteeing resilience against server failures and malicious attacks.

User Benefits:

1) No Censorship: Users enjoy unrestricted freedom of speech, promoting diverse viewpoints.

2) Data Ownership and Privacy: Users control their data, enhancing privacy and security.

3) Reliable Service: SocialX ensures uninterrupted access, even in the face of server failures.

Why SocialX and Web3?

Censorship Resistance: SocialX leverages Web3 to resist censorship, fostering unrestricted communication.
Enhanced Security and Privacy: Web3's cryptographic techniques protect user data and ensure privacy.
Reduced Reliance on a Single Entity: SocialX empowers users, eliminating data ownership ambiguity found in Web 2.0 platforms.

In summary, SocialX is a decentralized solution that solves censorship, data ownership, and server reliability issues. It empowers users, fosters free expression, enhances privacy, and ensures a reliable social media experience through Web3 technology.

Challenges ran into :

During the development of SocialX, our team encountered several challenges, each requiring innovative solutions to ensure the project's success. Here are some of the specific hurdles we faced and how we overcame them:

Smart Contract Development:
Challenge: Developing a robust and secure smart contract on Ethereum's Sepolia test network posed a considerable challenge. Smart contracts are the backbone of decentralized applications, and any vulnerabilities could compromise the entire system.

Solution: We addressed this challenge by extensively studying Ethereum's Solidity programming language and conducting rigorous code audits.

Data Storage on IPFS:
Challenge: Leveraging IPFS for decentralized data storage introduced complexities in managing and retrieving user-generated content efficiently. The decentralized nature of IPFS brought challenges related to content availability and retrieval speed.

Solution: To address these issues, we implemented a robust content caching mechanism within SocialX. This cache system ensures that frequently accessed content is readily available, reducing retrieval times. Additionally, we optimized the process of storing and pinning content on IPFS, making it more user-friendly.

Smart Contract-Frontend Integration:
Challenge: Integrating the smart contract seamlessly with the frontend was a critical challenge. Ensuring that user interactions with the decentralized application accurately reflected changes on the blockchain required meticulous planning.

Solution: We adopted a modular and well-documented approach to our smart contract and frontend development. This allowed us to build a clear interface between the two components, ensuring that data on the blockchain and the frontend remained synchronized. Extensive testing and debugging were also crucial to identifying and resolving integration.

Tech Stack :

  1. React.js
  2. Ethers.js
  3. Solidity
  4. Ethereum
  5. Seploia Testnetwork
  6. Wallet Connect SDK
  7. IPFS

Github URL :

Github url is here (click here)

Video Demo :

Click here to view video

Team Profile :

  1. Ankit Gupta - Blockchain developer
  2. Ankit Kumar - Frontend Developer

Screenshots :

Image description
Image description

XDC wallet address :

0x90d22f62A93C51C268a0938735E4b1703e6f3F83

Discussion (0)