Middleman lets developers spin up wallets for users that don't have a web3 enabled browser. It's as 😍 as /GET wallet.
The same way Infura offers developers an API to connect to an ethereum node if the user doesn't have one locally, this offers developers an API to connect to an ethereum wallet if the user doesn't have one locally. Think of it like "wallets in the 🌥" or like a hosted version of Metamask.
To spin up a wallet, you /POST wallet and then you can use it just like a local wallet in the user's browser. A Middleman wallet can sign/encrypt/transact/all the things a normal wallet can do. Anything you can do with web3js.eth.account you can do with Middleman.
Unlocking Dapps For Web2 Users
Middleman is a good onramp to help Web2 users to use the Web3 dapps you build. With Middleman, a user can use your dapp from a normal browser. When they switch devices, their wallet moves with them. When they want, they can transfer their funds out. With some clever wizardry, you could even have the user pay in USD and behind the scenes, that USD is swapped into token and transferred into their hosted wallet.