I have contributed codes to tendermint and substrate, and I find both of them are not very useful. Then I have developed an independency application blockchain framework for about 3 years:
It can help developers develop an independency appchain like developing a web API which is much easier and more customized than substrate and cosmos-sdk.
As Vitalik and Starkware mentioned: L2 is for scaling, L3 is for customized functionality/scaling. We can define various assets and some large transactions on Ethereum L1, most transfer on L2 for scaling, and customized functionality on L3. As we know, L2 solutions are almost for scaling, but we still need some app-specific scenes. Just like if you want to develop a decentralized Uber, you can use Yu to develop one with rich golang third-party libs for expanding more functions.
Yu includes but not limited to the following functions:
(1) Modular onchain txs(writing) and queries(reading)
(2) Customizable consensus. It contains POA by default, but you can develop easily any consensus protocol you want. Yu provides you free tx packaging and verification methods, simple P2P interfaces, blockchain interfaces and so on.
(3) You can move EVM into yu as a module to compatible with solidity, also you can use something other than the EVM to compatible with js/python/shell/… as the chain’s scripts codes. Just like Chrome’s extensions.
More details please visit the above link.
In all, I think yu is the most suitable one for L3 app-specific blockchain.
Certainly, you can also use yu to develop the decentralized sharing sequencer, L2 side-chain and any customizable blockchains as you need.
I will keep developing yu, I hope developers can use it to develop app-specific chains easier and it can even help developers from web2 easily get started developing L3 appchain.
I hope to receive suggestions and opinions from everyone,
Please connect me any time if you want. firstname.lastname@example.org
Thank you very much.