substrate-docs icon indicating copy to clipboard operation
substrate-docs copied to clipboard

Propose a new architecture page design.

Open kianenigma opened this issue 3 years ago • 6 comments

I think the picture and description in https://substrate-docs-staging.netlify.app/v3/getting-started/architecture is a bit too simplistic with regards to storage. Storage is not a wrapper around the runtime. Externalities is. Externalities are all the components that a host (e.g. substrarte client, smaldot) must give to the runtime, one of which is the storage ability. I think this detail can easily be explained in this picture, and explain the important concept of Externalities as well along side with it.

I will try and make a new version of the image myself and post it as an example.

kianenigma avatar Oct 07 '21 13:10 kianenigma

┌─────────────────────────────────────────────────────────────────────────────────────────────┐
│                                                                                             │
│                                                                                             │
│                                                                                             │
│                                                                                             │
│                                                                                             │
│                            ┌───────────────────┐                                            │
│                            │                   │                                            │
│                            │ ┌───────────────┐ │                                            │
│                            │ │ wasm runtime  │ │                                            │
│                            │ │               │ │                                            │
│                            │ │               │ │                                            │
│                            │ │               │ │                                            │
│                            │ │               │ │                                            │
│                            │ │               │ │                                            │
│                            │ └───────────────┘ │                                            │
│                            │                   │                                            │
│                            │                   │                                            │
│                            │                   │                                            │
│                            │  ┌─────────┐      │                                            │
│                            │  │         │      │                                            │
│                            │  │storage  │      │                                            │
│                            │  └─────┬───┤      │                                            │
│                            │        ├───┴────┐ │                                            │
│                            │        │        │ │                                            │
│                            │        │hashing │ │                                            │
│                            │        ├─┬──────┘ │                                            │
│                            │  ┌─────┴─┤        │                                            │
│                            │  │       │        │                                            │
│                            │  │tracing│        │                                            │
│                            │  └───────┘        │                                            │
│                            │                   │                                            │
│                            │  externalities    │                                            │
│                            └───────────────────┘                                            │
│                                                                                             │
│                       ┌───────────────────────────────────┐                                 │
│                       │                                   │                                 │
│                       │                                   │                                 │
│                       │       ROCKS DB                    │                                 │
│                       └───────────────────────────────────┘                                 │
│                                                                                             │
│                                                                                             │
│                                                                                             │
│                     substrarte client                                                       │
└─────────────────────────────────────────────────────────────────────────────────────────────┘

A very ugly example of what I mean.

kianenigma avatar Oct 07 '21 14:10 kianenigma

Thanks Kian for the feebdack. Will bring this to design and keep you updated.

sacha-l avatar Oct 09 '21 15:10 sacha-l

Screenshot 2021-10-25 at 23 09 43 Example ^^

kianenigma avatar Oct 25 '21 21:10 kianenigma

This looks like an easy win to put in as is and update the docs to make sure we mention each item here. I would just want the raw graphic (svg, g slides?) - Kian, can you share here or direct on element?

nuke-web3 avatar Oct 25 '21 23:10 nuke-web3

A very small nit pick, but I think the size and location of the different boxes should either be intentional (showing relationships between boxes / relative size of that project), or they should all be the same.

Not looking to convey any information subliminally.

shawntabrizi avatar Dec 29 '21 18:12 shawntabrizi

Screenshot 2021-10-25 at 23 09 43 Example ^^

Why is the native runtime here on the left?

bkchr avatar Dec 29 '21 19:12 bkchr