user2155: I am currently learning about Plutus and how to write smart contracts in it by following the Plutus Pioneers course on Youtube.
However, I'm curious to know how things work from a node perspective: How a Cardano node receives and validates a transaction that has a smart contract attached to it.
What repos/branches should I take a look at?
I also asked this at Reddit/r/CardanoDevelopers.

user252: Given that you're looking for what node (likely you mean protocol) does, the code you're looking for is distributed across repositories.
You can find the source code for interaction with node (API) here, while the propogation/consensus aspect can be found at ouroboros-network repo.
All the component-level repositories use ledger derivates from executable specs here - note that I've shared Alonzo specs which is not being used on mainnet yet, but given the background provided in your question.
Lastly, the plutus spec/execution code itself used for testnet(s) - as you're prolly aware - resides in plutus repo

2155: <p>I am currently learning about Plutus and how to write smart contracts in it by following the Plutus Pioneers course on Youtube.</p>
<p>However, I'm curious to know how things work from a node perspective: How a Cardano node receives and validates a transaction that has a smart contract attached to it.</p>
<p>What repos/branches should I take a look at?</p>
<p><a href="https://www.reddit.com/r/CardanoDevelopers/comments/o9f59o/where_to_find_the_code_for_alonzo_plutus_smart/" rel="nofollow noreferrer">I also asked this at Reddit/r/CardanoDevelopers</a>.</p>
 252: <p>Given that you're looking for what node (likely you mean protocol) does, the code you're looking for is distributed across repositories.</p>
<p>You can find the source code for interaction with node (API) <a href="https://github.com/input-output-hk/cardano-node/tree/master/cardano-api/src/Cardano/Api" rel="nofollow noreferrer">here</a>, while the propogation/consensus aspect can be found at <a href="https://github.com/input-output-hk/ouroboros-network" rel="nofollow noreferrer">ouroboros-network</a> repo.</p>
<p>All the component-level repositories use ledger derivates from executable specs <a href="https://github.com/input-output-hk/cardano-ledger-specs/tree/master/alonzo/impl/src/Cardano/Ledger" rel="nofollow noreferrer">here</a> - note that I've shared Alonzo specs which is not being used on mainnet yet, but given the background provided in your question.</p>
<p>Lastly, the plutus spec/execution code itself used for testnet(s) - as you're prolly aware - resides in <a href="https://github.com/input-output-hk/plutus" rel="nofollow noreferrer">plutus repo</a></p>
