MantaSphere is a decentralized application designed to streamline and secure your interactions with blockchain technology. By leveraging smart contracts and modern web technologies, MantaSphere simplifies complex blockchain operations, offering an intuitive and user-friendly experience.
- Smart Contract Integration: Interact with smart contracts directly through a secure and intuitive interface.
- Wallet Connectivity: Easily connect various Ethereum wallets using RainbowKit.
- Real-Time Data: Access and update blockchain data with real-time synchronization.
- User-Friendly Interface: Built with React.js for a dynamic and responsive frontend experience.
- Secure and Scalable: Utilizes Solidity for smart contracts, ensuring safety and efficiency in transactions.
- Solidity: For developing and deploying smart contracts.
- Hardhat: Development environment for compiling and testing smart contracts.
- React.js: Frontend library for building a responsive user interface.
- RainbowKit: Simplifies wallet integration.
- Viem: TypeScript library for Ethereum interactions.
- Express.js: Backend framework for API development.
- MongoDB: NoSQL database for storing application data.
- TypeScript: Adds static typing for improved development efficiency.
- Web3.js: JavaScript library for interacting with Ethereum.
- Tailwind CSS: Utility-first CSS framework for styling.
- Jest: Testing framework for frontend and backend code.
- Prettier & ESLint: Code formatting and linting tools.
- dotenv: Manages environment variables.
To get started with MantaSphere, follow these steps:
-
Clone the Repository:
git clone https://github.com/kunaldhongade/mantasphere.git cd mantasphere
-
Install Dependencies:
For the frontend:
cd frontend npm install
For the backend:
cd ../backend npm install
-
Compile and Deploy Contracts:
cd ../contracts npx hardhat compile npx hardhat run scripts/deploy.js
-
Start the Backend Server:
cd ../backend npm start
-
Run the Frontend:
cd ../frontend npm start
- Connect Your Wallet: Open the frontend application and use RainbowKit to connect your Ethereum wallet.
- Interact with Smart Contracts: Use the provided UI to interact with smart contracts and perform blockchain operations.
- View Data: Access real-time data from the blockchain through the application's user interface.
During development, one major challenge was resolving dependency conflicts related to TypeScript versions. The issue arose because different libraries required incompatible versions of TypeScript. To overcome this, I adjusted the dependency versions and utilized --legacy-peer-deps
during installation to ensure compatibility. This approach allowed me to align the dependencies and proceed with development.
Contributions to MantaSphere are welcome! Please follow these guidelines:
- Fork the repository.
- Create a new branch for your feature or bug fix.
- Submit a pull request with a clear description of the changes.
MantaSphere is licensed under the MIT License. See LICENSE for more details.