Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: update with additional diagram to highlight components more clearly #20612

Merged
merged 6 commits into from
Jun 20, 2024
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions docs/learn/intro/03-sdk-design.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ Here is a simplified view of how transactions are handled by an application buil
3. Route each message to the appropriate module so that it can be processed.
4. Commit state changes.

![main-components](main-components.png)

## `baseapp`

`baseapp` is the boilerplate implementation of a Cosmos SDK application. It comes with an implementation of the ABCI to handle the connection with the underlying consensus engine. Typically, a Cosmos SDK application extends `baseapp` by embedding it in [`app.go`](../beginner/00-app-anatomy.md#core-application-file).
Expand Down
Binary file added docs/learn/intro/main-components.png
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

could we get the diagram in mermaid? helps future contributors not need to change. the diagram looks way better than mermaid but better to be consistent

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

there should be a way to make it similar to what you added as the image. Its a bit complicated

Copy link
Member

@tac0turtle tac0turtle Jun 11, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

graph
    subgraph Main components of the sdk
        B[baseapp]
            subgraph Multistore
            E[kvstore]
            F[kvstore]
            G[kvstore]
            end
        D[Modules]
    end
Loading

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i cant get the arrow to work. and show up like this. its annoying

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ill try give mermaid another go for this... Its so ugly but I know mermaid is way better for maintainability. Could we not have a couple of excalidraw ones in there for the higher level concepts that wont change?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i mean yours also looks way better than mine

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Okay I tried this further and honestly I feel like we arent going to be able to use mermaid for all diagrams. I spend 30 mins trying to draw up a diagram and I could have remade it in excalidraw 3 times over. Im thinking we could just use both and include the excalidraw files maybe in the docs repo?

Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading