So I read about the Loopring L3 coming and I got jealous and wanted to deploy my own L3 on the Taiko testnet.
It’s for this project, which needs to have an independent ledger with a little bit of custom logic we want to add.
I found the docs for running the alpha testnet, and also for deploying the contracts, and I got a node running on the alpha testnet. But what I’d like to do is ideally to deploy the contracts on the alpha testnet then spin up my own testnet on top of that (so a L3), or failing that set up my own independent testnet on Sepolia or a local L1 (so a parallel L2).
Are there any docs for this? If not, should I wait a bit for someone to create them, or should I fight my way through it and try to get it working then write the docs?
I guess it really comes down to your experience level & requirements. Do you have experience with smart contracts and/or creating blockchains from the ground up? I would certainly start with deploying smart contracts, your own token, etc - which would be a good starting point as youd be able to create your own token with various custom elements as needed.
But since youre asking about potentially making an L3, I’m guessing you have a bit more experience than just smart contracts.
But I would also ask if you really need an independent ledger? Or whether the logic youre looking for can be implemented just using smart contracts? Diving into L2/L3 development would just be a lot of work. You’re developing an entire other blockchain network + consensus mechanism, block creation handling and node management structure (not to mention having the hardware online and running to then maintain and grow the network). Smart contracts are ‘smart’ because they let you utilize the Ethereum network for this kind of stuff, without needing to build your own infrastructure and protocols.
Either way, if the L3 option is critical for some reason, Taiko itself is under the MIT licence, you can dive into the code yourself over on github. I would be waiting to see how the L3 Taiko is deployed on top of the L2 Taiko, which doesnt have any direct information yet. Either that or see if you can find some resources online on building a L2/L3 (but I cant find much of use tbh). The deplying to Taiko part of this idea would still be up in the air of course. But we should see that happen in the coming weeks.
Thanks for replying. To be clear, when I say we need an independent ledger, we don’t need a new system for handling a ledger. If we were talking about an independent L1 instead of an L2/L3, we’d be talking about spinning up a new chain with Geth, not about reimplementing Geth. In our case we need to be able to do this because the design needs to allow the entire chain to fork. It’s not really practical to do this with smart contracts on top of an existing chain. We know how to deploy smart contracts and so forth. We also have a pretty good idea how to make the modifications we need to handle the forking etc.
What we’re trying to build is unusual, but my question is more general: Is there a doc for spinning up a new taiko chain? I think this will be useful to people trying to test applications as well as people trying to build an L2/L3, as the official test networks are short-lived so you may well want to run your own local test network.
hello @edmundegar! docs for deploying Taiko (as an L2, or an L3) is definitely something on our radar. as it stands, it’s of course possible to do (there is no hidden code, you can find everything under our github organization: Taiko Labs · GitHub). however we know that this is difficult without a step-by-step walkthrough.
i can’t answer when or even if this will come (as official docs from Taiko Labs) because of other priorities, but it is something we are thinking about and planning to work on soon. this is because we want to enable the community to build / experiment and thus help push the space forward together.
the caveat is how well supported this documentation is. i don’t expect that there will be a lot of support for it (at least in the first iteration), and this guide would be minimal / geared towards more advanced users. that’s because we have the high priority on delivering Taiko to mainnet. we could however try to make it more beginner friendly and supported over time.
OK, thanks, makes sense.
For now I’ll fiddle around with what I can see on Github and make some notes for other people if it seems like I’m getting anywhere.