Skyline Protocol is a decentralized application (dApp) designed to tokenize real-world real estate assets on the Ethereum blockchain. It bridges the gap between traditional finance (TradFi) and decentralized finance (DeFi) by allowing users to own fractional shares of a property, claim yields generated from rent/operations, and track asset performance in real-time.
This project demonstrates a full-stack Web3 implementation, handling the entire lifecycle from Smart Contract development (Solidity) to frontend integration (React/Ethers.js).
- Fractional Ownership: Users can hold ERC-20 tokens (
SKD) representing shares of a physical building. - Real-Time Yield Distribution: A simulated Oracle updates the property's net yield (occupancy rates, rental income) periodically.
- Dividend Claiming: Smart contract logic calculates and distributes rewards in USDC based on the user's token holdings.
- Interactive Dashboard: A React-based interface with real-time data visualization using Recharts.
This project was built using industry-standard tools for scalability and security:
- Blockchain & Contracts:
- Solidity (v0.8.24): Smart Contract logic.
- Hardhat: Development environment, testing, and deployment scripts.
- OpenZeppelin: Standard secure implementations for ERC-20.
- Frontend & Integration:
- React + Vite: High-performance UI framework.
- TypeScript: Type safety for robust code.
- Ethers.js (v6): Blockchain interaction and wallet connection.
- Tailwind CSS: Modern, responsive styling.
- Recharts: Data visualization for financial metrics.
The protocol consists of three main components:
- SkylineToken (ERC-20): Represents the equity in the building.
- MockUSDC: Simulates a stablecoin for paying out dividends.
- Bridge Script (Off-chain): A TypeScript worker that simulates real-world data (Oracle) and injects yield into the smart contracts.
Prerequisites: Node.js (v20+) and a Web3 Wallet (MetaMask/Brave).
git clone [https://github.com/YOUR_USERNAME/Skyline-Protocol.git](https://github.com/YOUR_USERNAME/Skyline-Protocol.git)
cd Skyline-Protocol
npm installOpen a terminal and run the Hardhat node:
npx hardhat nodeIn a second terminal, deploy the contracts and start the bridge simulation:
npx hardhat run scripts/bridge.ts --network localhostNote: This script will deploy MockUSDC and SkylineToken, and distribute initial tokens to test accounts.
In a third terminal, launch the user interface:
cd frontend
npm install
npm run devAccess the dApp at http://localhost:5173.
The project includes automated tests for contract security and logic.
npx hardhat testThis project is open-source and available under the MIT License.
