J.D Nicholls
Founding Full-Stack Web3 Engineer at @baxusco | Digital nomad π | Mentor π¨βπ« | Speaker π£οΈ | Developer π¨βπ» | Creator of @proyecto26 #opensource #developer
Tame full-stack chaos with Temporal workflows and React wizardry, the ultimate event-driven architecture for your apps π§ββοΈβ¨
Digital nomad π | Mentor π¨βπ« | Speaker π£οΈ |
Full-Stack Web3 Engineer (JS, Python, C#) π¨βπ» |
Open Source Contributor π« |
Creator of @proyecto26 π§
π· Founder of MarketX π€ + π + βΏ = ποΈ
MarkertX, the next generation of e-commerce powered by GenAI and 3D printing
To be Continued...
The next workflow activation has begun! π
- Reliability
- Fault-tolerant
- Replicated state machine
- Retry policies
There are tradeoffs between
Consistency & Availability
(Strongly) Consistent, (Always) Available, Partition-tolerant
Replicate data
β
π°
β
Niceee
May the Workflow be with you π
We live in a world of uncertainty, where events vanish like whispers in the wind π¨
When workflows run themselves, developers dream bigger.
10x+ improved reliability
β Saved revenue
Simplify the coding
Enhanced visibility
into systems
Horizontal scale, even for monoliths
β 10x feature velocity
β Easier compliance
β Less optimization
time required
export async function loginUserWorkflow(data: LoginWorkflowData) {
const state: LoginWorkflowState = { // Your workflow state
codeStatus: LoginWorkflowCodeStatus.PENDING,
status: LoginWorkflowStatus.PENDING,
};
// Attach queries, signals and updates
setHandler(getLoginStateQuery, () => state);
setHandler( verifyLoginCodeUpdate,
async (code) => { } // Verify the code and update state
);
try {
// Generate a hashed code and send an email
const hashedCode = await sendLoginEmail(data.email);
state.code = hashedCode;
state.codeStatus = LoginWorkflowCodeStatus.SENT;
// Wait for user to verify code (human in the loop)
await condition(() => !!state.user, '10m') // wait 10 min max
// Wait for all handlers to finish before checking the state
await condition(allHandlersFinished);
// Update workflow state
} catch (error) {
// Manage failure scenarios
}
}
Only those who prove their identity shall pass π§ββοΈ
The State of the Workflow is used to make decisions.
REPO / REACT / REMIXJS
TEMPORAL / NODEJS
NESTJS / NX / ππ¬π«π¦
Of course Elon, Code here! π
By J.D Nicholls
Tame full-stack chaos with Temporal workflows and React wizardry, the ultimate event-driven architecture for your apps π§ββοΈβ¨
Founding Full-Stack Web3 Engineer at @baxusco | Digital nomad π | Mentor π¨βπ« | Speaker π£οΈ | Developer π¨βπ» | Creator of @proyecto26 #opensource #developer