StarkNet is a permissionless ZK-Rollup layer 2 scaling solution for Ethereum that enables massive scalability without compromising security. It uses Cairo, a new programming language with some quirks compared to Solidity like using mappings instead of arrays and special assertions instead of boolean expressions. A basic dApp could include stake contracts on both StarkNet (L2) and Ethereum (L1) along with functions for depositing, withdrawing, and transferring fees between layers using StarkNet's ability to pass messages between L1 and L2 contracts. The dApp contracts would need to be compiled and deployed to both StarkNet and Ethereum.