Have you played with `create-ceramic-app`?

@Radek - I have (already) looked at the Sandbox tutorial. You asked if that’s helpful / interesting for newcomers. I can give one perspective. Unfortunately, I’m having trouble providing properly constructive feedback (Rumsfeldian known unkowns) as a newcomer, I don’t understand enough to know what a newcomer actually needs :grinning: . Otherwise, I’d just submit a PR. Here goes …

The Sandbox seems like a good way to let a newcomer actually interact with ComposeDB. This is great - interactive docs (genuine thumbs up - docs are hard, and this is an attempt to go above and beyond). However, …

ComposeDB is a graph database for web3. There are many introductions to graph databases and GraphQL. While people need both, I suggest that for somebody using Ceramic tutorials, the main conceptual leap is the ‘for web3’ bit. Other than linking a wallet, the sandbox tutorial doesn’t really address this. (The material is good, but not sufficient).

Having spent days scouring the docs as best I can, I think that the main ‘web3’ gaps are to do with Ceramic not ComposeDB. As a newcomer at this stage, I have pretty good understanding of IPFS, and an (ok-at-best) academic understanding of anchors, DIDs etc, but little to no feel for how this all pans out in practice. In a more-perfect world, I think that newcomers would benefit from a Ceramic/ComposeDB/IPFS etc hands-on demo-like thing with a strong emphasis on what’s going on under-the-hood with the data, interactions with blockchain, nodal interactions etc (without having to learn JS, to read the codebase, to understand a generic protocol). And, my impression is that this might not be too big a stretch…

The @jthor Youtube playground demos are a good example of hands-on exploration. @david kindly pointed me towards Keramik in his advice here. And your create-ceramic-app can/does set up a local working web3 environment - that can be inspected. Would it be possible to produce a (wheel or, my preference, Keramik / docker image) test/training environment with maybe 3x Ceramic nodes linked to 3x corresponding IPFS nodes (simulating 3 x physical machines in a network), and a (ganache?) blockchain with fully open DIDs/wallets/admins? Such that … a user can run the environment and follow along adding data, pinning stuff, use Ceramic from different users’ points of view, see ETH being used up, using ComposeDB, while also inspecting the state of all the nodes / chain etc. This is where I was going with the use of Hoppscotch (as that might help with both HTTP and GraphQL queries without having to know JS too - just use the HTTP APIs). I’d happily write the tutorial - making the environment is the bit that’s very slow for a beginner who doesn’t know enough yet.

In short - I suspect that (re)providing a playground environment would not be too hard, and would enable some great on-boarding tutorials for newcomers.

3 Likes