Skip to content

Commit 911f8d1

Browse files
committed
docs(pathway): update session notes and enhance diagram clarity
- Revise session notes to clarify the purpose of the diagram and provide a linear narrative through curated links. - Update diagram phases for better organization and understanding of the Cardano developer journey. - Add detailed curated links for local devnet, transaction anatomy, UTxO concurrency, and wallet integration to enhance resource accessibility. - Improve CSS for outcome nodes in the diagram to ensure better visibility and alignment. Made-with: Cursor
1 parent 10dfd2e commit 911f8d1

3 files changed

Lines changed: 115 additions & 49 deletions

File tree

website/docs/working-group/sessions/q1-2026/12-cardano-developer-pathway/session-notes/readme.mdx

Lines changed: 57 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,9 @@ import MermaidDiagramFrame from '@site/src/components/MermaidDiagramFrame';
1313

1414
This page is a **single interactive map** of the Cardano developer journey. **Hover** nodes for tooltips, **click** nodes to open docs (new tab). Use **Full view** on the diagram toolbar for fullscreen, and **Zoom in / out** (or **Ctrl/Cmd + scroll wheel** over the diagram) to change scale. It incorporates the [Session 12 DX audit themes](https://github.com/IntersectMBO/developer-experience/issues/200): local devnets, transaction anatomy, concurrency, debugging, hosted APIs, NFT standards, EVM migration, governance, L2, and cross-chain—without splitting content across many files.
1515

16-
Use the **tool grid** under the diagram to explore each product in depth. For tables and quick reference, see [Resources](../session-resources/readme.md).
16+
The diagram is **supplementary**: it is dense on purpose. For a linear narrative, tables, and [curated links that match diagram nodes](../session-resources/readme.md#pathway-deep-links), use **Resources**.
17+
18+
Use the **tool grid** under the diagram to explore each product in depth.
1719

1820
---
1921

@@ -23,7 +25,7 @@ Use the **tool grid** under the diagram to explore each product in depth. For ta
2325

2426
```mermaid
2527
flowchart TD
26-
subgraph orient [Orientation]
28+
subgraph phase1 [Phase 1 · Orientation and entry]
2729
start([Where are you starting])
2830
beginner[Complete beginner no code yet]
2931
web2[Web2 developer JS Python Rust Java and more]
@@ -41,36 +43,38 @@ flowchart TD
4143
fund --> learnHere["Learn here Academy developers.cardano.org Gimbalabs cardano-course"]
4244
end
4345
44-
subgraph crossCut [Cross-cutting knowledge]
45-
stack2026["Default stack for most new builds in 2026 Aiken plus MeshJS plus Blockfrost swap Lucid Blaze Koios when needed"]
46-
noFullNode["You do not need a synced full node for many dApps use Blockfrost Koios or Maestro"]
47-
cborNote["CBOR appears in txs datums redeemers and addresses essential for low-level debugging"]
48-
cipPick["Essential CIPs to prioritize CIP-30 wallet CIP-25 27 31 assets CIP-33 reference scripts CIP-68 metadata CIP-1694 governance"]
46+
subgraph phase2 [Phase 2 · Cross-cutting knowledge]
47+
stack2026["Default stack 2026 Aiken plus MeshJS plus Blockfrost swap Lucid Blaze Koios when needed"]
48+
noFullNode["No synced full node for many dApps Blockfrost Koios Maestro"]
49+
cborNote["CBOR in txs datums redeemers addresses low-level debugging"]
50+
cipPick["Essential CIPs CIP-30 wallet CIP-25 27 31 CIP-33 CIP-68 CIP-1694"]
4951
end
5052
5153
learnHere --> stack2026
5254
learnHere --> noFullNode
5355
fund --> cborNote
5456
fund --> cipPick
5557
56-
subgraph ramp [Intermediate ramp first shipped projects]
57-
rampVm[Vending machine or similar single-purpose contract]
58-
rampNft[NFT minter native assets CIP-25 CIP-67 labels CIP-68]
59-
rampDex[Simple DEX or swap lesson hits UTxO concurrency]
60-
rampFull[Full stack dApp validator plus SDK plus UI plus APIs]
58+
subgraph phase3 [Phase 3 · Intermediate projects]
59+
rampVm[Vending machine or single-purpose contract]
60+
rampNft[NFT minter CIP-25 CIP-67 CIP-68]
61+
rampDex[Simple DEX or swap UTxO concurrency lesson]
62+
rampFull[Full stack validator SDK UI APIs]
6163
rampVm --> rampNft --> rampDex --> rampFull
6264
end
6365
6466
learnHere --> rampVm
65-
stack2026 --> pickTrack
6667
67-
evmEntry -->|Or fast path after basics| evmMap["EVM to Cardano map accounts vs UTxO no msg.sender ExUnits vs gas Aiken and ecosystem libs"]
68-
evmMap --> pickTrack
68+
evmEntry -->|Or fast path after basics| evmMap["EVM to Cardano accounts vs UTxO no msg.sender ExUnits vs gas Aiken ecosystem"]
69+
evmMap --> readySpec
70+
71+
rampFull --> readySpec
72+
cipPick --> readySpec
73+
stack2026 --> readySpec
6974
70-
rampFull --> pickTrack
71-
cipPick --> pickTrack
75+
readySpec[Ready to specialise primary track]
7276
73-
pickTrack{Choose primary track}
77+
readySpec --> pickTrack{Choose primary track}
7478
7579
pickTrack --> trackSc[Smart contracts on-chain logic]
7680
pickTrack --> trackFe[Frontend dApp JS React Next]
@@ -89,8 +93,8 @@ flowchart TD
8993
aikenLearn --> localDevnet
9094
plutusLearn --> localDevnet
9195
92-
localDevnet["Local devnet fast feedback Yaci DevKit cardano-testnet or Ogmios plus Kupo before testnet round-trips"]
93-
localDevnet --> scBuild["Validators scripts datum redeemer minting policies"]
96+
localDevnet["Local devnet Yaci cardano-testnet Ogmios Kupo fast feedback before testnet waits"]
97+
localDevnet --> scBuild["Validators datum redeemer minting policies"]
9498
9599
trackFe --> sdkPick{Off-chain SDK}
96100
@@ -104,11 +108,13 @@ flowchart TD
104108
blazeSdk --> txAnatomy
105109
otherSdk --> txAnatomy
106110
107-
txAnatomy["Transaction anatomy minUTxO collateral ExUnits coin selection linear fees reference scripts CIP-33"]
111+
txAnatomy["Tx anatomy minUTxO collateral ExUnits fees coin selection CIP-33 ref scripts"]
112+
113+
txAnatomy --> walletCip["Wallet APIs CIP-30 CIP-95 CIP-62"]
108114
109-
txAnatomy --> walletInt["Wallet integration CIP-30 dApp connector CIP-95 governance CIP-62 mobile hardware light vs full node wallets errors user reject and balance"]
115+
walletCip --> walletOps["Connect flows errors mobile hardware light vs full node"]
110116
111-
walletInt --> feBuild["dApp UI tx building chain queries state UX"]
117+
walletOps --> feBuild["dApp UI tx building chain state UX"]
112118
113119
trackInfra --> nodeCli[Cardano node and cardano-cli]
114120
nodeCli --> indexerLayer[DB-Sync Kupo Scrolls Oura Dolos]
@@ -117,27 +123,29 @@ flowchart TD
117123
118124
noFullNode -.-> apiLayer
119125
120-
designer --> uxLearn[Web3 UX wallet flows pending txs fees]
121-
uxLearn --> walletInt
126+
designer -->|UX-heavy path skips core SDK track| uxLearn[Web3 UX wallet flows pending txs fees]
127+
uxLearn --> walletCip
122128
123129
scBuild --> integrateFull
124130
feBuild --> integrateFull
125131
spoPath --> integrateFull
126132
127-
integrateFull["Full-stack integration on-chain plus off-chain plus UI plus chain data"]
133+
integrateFull["Full-stack integration validators off-chain UI chain data"]
128134
129-
integrateFull --> utxoConcurrency["UTxO concurrency patterns batching state threads beacons fan-in fan-out avoid single hot UTxO"]
135+
integrateFull --> utxoConcurrency["UTxO concurrency batching beacons fan-in fan-out avoid hot UTxO"]
130136
131-
utxoConcurrency --> testDebug["Testing plus on-chain debug property tests integration Aiken tests cardano-cli transaction evaluate script traces Aiken tracing ExUnits overruns"]
137+
utxoConcurrency --> testLayer["Tests property integration CI full stack"]
132138
133-
testDebug --> auditGate{External audit needed}
139+
testLayer --> debugLayer["On-chain debug CLI evaluate traces Aiken tracing ExUnits"]
140+
141+
debugLayer --> auditGate{External audit needed}
134142
135143
auditGate -->|DeFi or high value| auditFirm[Tweag Anastasia MLabs Vacuum and peers]
136144
auditGate -->|Simple dApp| shipTestnet
137145
138146
auditFirm --> shipTestnet
139147
140-
shipTestnet["Testnets Preview Preprod Sanchonet faucets env-specific SDK config see testnet docs"]
148+
shipTestnet["Testnets Preview Preprod Sanchonet faucets SDK network config"]
141149
142150
shipTestnet --> mainnetShip[Mainnet launch DeFi NFT DAO RWA gaming]
143151
@@ -149,10 +157,10 @@ flowchart TD
149157
150158
growPick --> corePath[Core protocol Haskell ledger CIPs cardano-node]
151159
growPick --> defiPath[DeFi founder DEX lending stablecoins]
152-
growPick --> l2Path[Hydra head Mithril snapshots zk and rollup research]
160+
growPick --> l2Path[Hydra Mithril zk rollup research]
153161
growPick --> nftPath[NFT gaming marketplaces RWA]
154-
growPick --> govPath[GovTool DRep Agora Voltaire DAO primitives CIP-1694]
155-
growPick --> bridgePath[Cross-chain bridges wrapped assets ecosystem bridges overview]
162+
growPick --> govPath[GovTool DRep Agora Voltaire CIP-1694]
163+
growPick --> bridgePath[Cross-chain bridges wrapped assets ecosystem]
156164
157165
corePath --> outcomes
158166
defiPath --> outcomes
@@ -161,45 +169,48 @@ flowchart TD
161169
govPath --> outcomes
162170
bridgePath --> outcomes
163171
164-
outcomes["Outcomes core contributor or dApp builder salary grants equity open source portfolio Catalyst meetups"]
172+
outcomes["Outcomes builder contributor salary grants portfolio Catalyst meetups"]
165173
166174
outcomes -->|Keep shipping| catalyst
167175
168176
click start "/docs/working-group/sessions/q1-2026/12-cardano-developer-pathway/session-resources/readme"
169177
click fund "https://developers.cardano.org/docs/get-started/"
170178
click learnHere "https://academy.cardanofoundation.org"
171-
click stack2026 "/docs/working-group/sessions/q1-2026/12-cardano-developer-pathway/session-resources/readme"
179+
click stack2026 "/docs/working-group/sessions/q1-2026/12-cardano-developer-pathway/session-resources/readme#pathway-deep-links"
172180
click noFullNode "https://blockfrost.io"
173-
click cborNote "https://developers.cardano.org/docs/get-started/"
181+
click cborNote "/docs/working-group/sessions/q1-2026/12-cardano-developer-pathway/session-resources/readme#pathway-cbor"
174182
click cipPick "https://github.com/cardano-foundation/CIPs"
175183
click rampVm "https://aiken-lang.org/language-tour/validators"
176184
click rampNft "https://developers.cardano.org/docs/native-tokens/"
177185
click rampDex "https://developers.cardano.org/docs/smart-contracts/"
178186
click rampFull "https://developers.cardano.org/docs/get-started/"
187+
click readySpec "/docs/working-group/sessions/q1-2026/12-cardano-developer-pathway/session-resources/readme#pathway-deep-links"
179188
click evmEntry "https://developers.cardano.org/docs/get-started/"
180189
click evmMap "https://aiken-lang.org"
181190
click aikenLang "https://aiken-lang.org"
182191
click plutusLang "https://plutus.readthedocs.io"
183192
click otherLang "https://developers.cardano.org/docs/smart-contracts/"
184193
click aikenLearn "https://aiken-lang.org/installation-instructions"
185194
click plutusLearn "https://iog.io/en/education/programs/plutus-pioneers-program/"
186-
click localDevnet "https://github.com/bloxbean/yaci-devkit"
195+
click localDevnet "/docs/working-group/sessions/q1-2026/12-cardano-developer-pathway/session-resources/readme#pathway-local-devnet"
187196
click scBuild "https://aiken-lang.org/language-tour/validators"
188197
click meshSdk "https://meshjs.dev"
189198
click lucidSdk "https://lucid-evolution.netlify.app"
190199
click blazeSdk "https://blaze.butane.dev"
191200
click otherSdk "https://developers.cardano.org/docs/get-started/"
192-
click txAnatomy "https://developers.cardano.org/docs/get-started/"
193-
click walletInt "https://github.com/cardano-foundation/CIPs/tree/master/CIP-0030"
201+
click txAnatomy "/docs/working-group/sessions/q1-2026/12-cardano-developer-pathway/session-resources/readme#pathway-transaction-anatomy"
202+
click walletCip "/docs/working-group/sessions/q1-2026/12-cardano-developer-pathway/session-resources/readme#pathway-wallets"
203+
click walletOps "/docs/working-group/sessions/q1-2026/12-cardano-developer-pathway/session-resources/readme#pathway-wallets"
194204
click feBuild "https://developers.cardano.org/docs/get-started/"
195205
click nodeCli "https://cardano-course.gitbook.io"
196206
click indexerLayer "https://github.com/IntersectMBO/cardano-db-sync"
197207
click apiLayer "https://koios.rest"
198208
click spoPath "https://developers.cardano.org/docs/operate-a-stake-pool/"
199-
click uxLearn "https://developers.cardano.org/docs/get-started/"
200-
click integrateFull "https://developers.cardano.org/docs/get-started/"
201-
click utxoConcurrency "https://cardano.stackexchange.com"
202-
click testDebug "https://aiken-lang.org/language-tour/tests"
209+
click uxLearn "https://meshjs.dev/guides"
210+
click integrateFull "/docs/working-group/sessions/q1-2026/12-cardano-developer-pathway/session-resources/readme"
211+
click utxoConcurrency "/docs/working-group/sessions/q1-2026/12-cardano-developer-pathway/session-resources/readme#pathway-concurrency"
212+
click testLayer "/docs/working-group/sessions/q1-2026/12-cardano-developer-pathway/session-resources/readme#pathway-testing-debug"
213+
click debugLayer "/docs/working-group/sessions/q1-2026/12-cardano-developer-pathway/session-resources/readme#pathway-testing-debug"
203214
click auditFirm "https://developers.cardano.org/docs/smart-contracts/"
204215
click shipTestnet "https://docs.cardano.org/cardano-testnets/getting-started/"
205216
click mainnetShip "https://developers.cardano.org/showcase"
@@ -210,12 +221,14 @@ flowchart TD
210221
click l2Path "https://hydra.family"
211222
click nftPath "https://developers.cardano.org/docs/native-tokens/"
212223
click govPath "https://gov.tools"
213-
click bridgePath "https://developers.cardano.org/docs/get-started/"
224+
click bridgePath "/docs/working-group/sessions/q1-2026/12-cardano-developer-pathway/session-resources/readme#pathway-bridges"
214225
click outcomes "https://developers.cardano.org/showcase"
215226
```
216227

217228
</MermaidDiagramFrame>
218229

230+
**How to read this map:** Steps run top to bottom, but **real delivery loops** between validators, off-chain builders, and UI—use the diagram for coverage, not as a strict waterfall.
231+
219232
<CardanoToolGrid label="Explore tools APIs languages and learning platforms in detail" />
220233

221234
---

website/docs/working-group/sessions/q1-2026/12-cardano-developer-pathway/session-resources/readme.md

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,53 @@ DeFi (DEX, lending, stablecoin, yield), NFT (marketplace, gaming), Identity, RWA
110110

111111
---
112112

113+
## 11. Pathway diagram deep links {#pathway-deep-links}
114+
115+
Curated links for nodes in the [Session Notes pathway diagram](../session-notes/readme.mdx). Use these when the generic developer portal is not enough.
116+
117+
### Local devnet (fast iteration) {#pathway-local-devnet}
118+
119+
- [Yaci DevKit](https://github.com/bloxbean/yaci-devkit) — local devnet and chain simulation
120+
- [cardano-testnet](https://github.com/IntersectMBO/cardano-testnet) — automated testnet environments
121+
- [Ogmios](https://ogmios.dev) + [Kupo](https://cardanosolutions.github.io/kupo/) — node bridge and UTxO indexer for local or remote dev
122+
123+
### Transaction anatomy {#pathway-transaction-anatomy}
124+
125+
- [Fees and min ADA (Cardano Docs)](https://docs.cardano.org/explore-cardano/cardano-architecture/working-with-cardano-node/cardano-cli/#calculate-the-minimum-utxo-of-an-output)
126+
- [CIP-33 — Reference scripts](https://github.com/cardano-foundation/CIPs/blob/master/CIP-0033/README.md)
127+
- [Integrate Cardano — developer portal](https://developers.cardano.org/docs/get-started/)
128+
129+
### UTxO concurrency and patterns {#pathway-concurrency}
130+
131+
- [Cardano Stack Exchange — smart-contracts tag](https://cardano.stackexchange.com/questions/tagged/smart-contracts) (search *concurrency*, *batching*, *single UTxO*)
132+
- [developers.cardano.org — smart contracts](https://developers.cardano.org/docs/smart-contracts/)
133+
- [CIPs repository](https://github.com/cardano-foundation/CIPs) — standards that shape how apps compose txs
134+
135+
### CBOR and low-level debugging {#pathway-cbor}
136+
137+
- [CIPs](https://github.com/cardano-foundation/CIPs) — many specs use CDDL; helps when reading raw CBOR
138+
- [Plutus docs — common types](https://plutus.readthedocs.io/en/latest/) — datums, redeemers, and on-chain data
139+
- [Cardano developer portal — get started](https://developers.cardano.org/docs/get-started/)
140+
141+
### Wallet integration (depth) {#pathway-wallets}
142+
143+
- [CIP-30 — dApp connector](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0030)
144+
- [CIP-95](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0095) · [CIP-62](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0062)
145+
- [MeshJS guides](https://meshjs.dev/guides)
146+
147+
### On-chain testing and tracing {#pathway-testing-debug}
148+
149+
- [Aiken — tests](https://aiken-lang.org/language-tour/tests)
150+
- [Cardano CLI — transaction build & submit](https://docs.cardano.org/cardano-components/cardano-cli/) (includes evaluation workflows)
151+
- [Cardano testnets](https://docs.cardano.org/cardano-testnets/getting-started/)
152+
153+
### Bridges and cross-chain {#pathway-bridges}
154+
155+
- [developers.cardano.org — integrations / listings](https://developers.cardano.org/docs/integrate-cardano/listings/)
156+
- [CIPs](https://github.com/cardano-foundation/CIPs) — follow cross-chain and bridge-related proposals as the ecosystem evolves
157+
158+
---
159+
113160
## Links
114161

115162
**Portal & learning:** [developers.cardano.org](https://developers.cardano.org) · [Cardano Academy](https://academy.cardanofoundation.org) · [aiken-lang.org](https://aiken-lang.org) · [meshjs.dev](https://meshjs.dev) · [Gimbalabs](https://gimbalabs.com) · [cardano-course.gitbook.io](https://cardano-course.gitbook.io)

website/src/css/custom.css

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1054,20 +1054,25 @@ html[data-theme='dark'] .searchBar .dropdownMenu svg {
10541054
}
10551055

10561056
/*
1057-
* Full Pathway: OUTCOME node — Mermaid sets a fixed foreignObject box; padding on
1057+
* Full Pathway: dense outcome node — Mermaid sets a fixed foreignObject box; padding on
10581058
* the inner div makes content taller than that box and clips. Keep padding minimal,
10591059
* slightly smaller type, and let the rectangle shape size to the label.
1060+
* (IDs: legacy OUTCOME, current outcomes)
10601061
*/
10611062
.docusaurus-mermaid-container svg g[id^='flowchart-OUTCOME'],
1062-
.docusaurus-mermaid-container svg g[id^='flowchart-OUTCOME'] .label {
1063+
.docusaurus-mermaid-container svg g[id^='flowchart-OUTCOME'] .label,
1064+
.docusaurus-mermaid-container svg g[id^='flowchart-outcomes'],
1065+
.docusaurus-mermaid-container svg g[id^='flowchart-outcomes'] .label {
10631066
overflow: visible;
10641067
}
10651068

1066-
.docusaurus-mermaid-container svg g[id^='flowchart-OUTCOME'] foreignObject {
1069+
.docusaurus-mermaid-container svg g[id^='flowchart-OUTCOME'] foreignObject,
1070+
.docusaurus-mermaid-container svg g[id^='flowchart-outcomes'] foreignObject {
10671071
overflow: visible;
10681072
}
10691073

1070-
.docusaurus-mermaid-container svg g[id^='flowchart-OUTCOME'] foreignObject div {
1074+
.docusaurus-mermaid-container svg g[id^='flowchart-OUTCOME'] foreignObject div,
1075+
.docusaurus-mermaid-container svg g[id^='flowchart-outcomes'] foreignObject div {
10711076
padding: 0.2rem 0.45rem;
10721077
text-align: center;
10731078
font-size: 0.86rem;
@@ -1076,7 +1081,8 @@ html[data-theme='dark'] .searchBar .dropdownMenu svg {
10761081
box-sizing: border-box;
10771082
}
10781083

1079-
.docusaurus-mermaid-container svg g[id^='flowchart-OUTCOME'] .basic.label-container {
1084+
.docusaurus-mermaid-container svg g[id^='flowchart-OUTCOME'] .basic.label-container,
1085+
.docusaurus-mermaid-container svg g[id^='flowchart-outcomes'] .basic.label-container {
10801086
rx: 18px;
10811087
ry: 18px;
10821088
}

0 commit comments

Comments
 (0)