Cartesi is a Layer-2 platform for the development of smart contracts and decentralized applications (dApps). It intends to solve the problem of scalability and high fees on blockchains through two pieces of infrastructure. The first is Descartes Rollups, which is a variant of an optimistic rollup. The second is Noether, a sidechain that provides data availability to applications. When combined, these products help Cartesi-based apps scale through both on-chain and off-chain components. Intensive and complex computations are handled off-chain, while Cartesi's rollup solution leverages underlying blockchain components for security and finalizing transactions. Cartesi also supports a Linux runtime environment for writing smart contracts. It intends to enhance smart contract programming by allowing developers to code with more commonly used software stacks and run them on a Linux OS.