EF JavaScript�Roadmap & Milestones
Work outlook until early 2025
Track Overview
Client Stateless Prep Track 0: SnapSync
Client Stateless Prep Track 1: Dependencies
Client Stateless Prep Track 2: Refactoring / Modularization
Side Track: Breaking Releases (August/September 2024)
Ultralight Track 1: Full EthereumJS Integration
Ultralight Track 2: 4444 / Client Integration
Ultralight Track 3: Production Readiness Prep
Core Dev Track 1: Verkle (Implementation / Kaustinen)
Core Dev Track 2: EOF / Testing
Core Dev Track 3: Everyday Work
Why?
Orientation for the team (beyond day & week)
Guidance & Inspiration for issues
Help to stick on longer reaching topics
Some success measurement
=> Not: Exclusive TODO list (overall 70%, different per team member)
Client Stateless Prep Track 0:�SnapSync
Get a bit more “stateless” (Snap Sync)
https://github.com/ethereumjs/ethereumjs-monorepo/issues/2874
Client Stateless Prep Track 1:�Dependencies
Down, down, down!
=> Goal: “Controllable” Dependency Set! /� Production Readiness
Client Stateless Prep Track 2:�Modularization / Refactoring
Goal:
Usage in different (stateless/stateful) scenarios, optimally with minimal dep set + min code size
Potential Refactorings:
- (Inner) Modularization (re-usage/opt-in/opt out core parts like Sync/RPC/Networking)�- Library + On-top packages�- Blockchain Refactor (Gajinder) => Skeleton�- …
Side Track:�Breaking Releases
Goals:
August, ~6-8 Weeks, Mid September Release
https://github.com/ethereumjs/ethereumjs-monorepo/issues/3216
Ultralight Track 1:�Full EthereumJS Integration
Fully integrate Ultralight into EthereumJS library suite!
EthereumJS
+
Ultralight
Ultralight Track 2:�4444 / Client Integration
Goals
=> See how Ultralight behaves “in Production”
=> Ultralight/Client Interplay
=> Test Portal Network / Gather data / Get “the Portal feel”
https://eips.ethereum.org/EIPS/eip-4444
https://www.ethportal.net ��https://github.com/ethereumjs/ethereumjs-monorepo/pull/3444
=> November, Devcon 2024!
Ultralight Track 3:�Production Readiness Prep
Core Dev Track 1:�Verkle
�https://github.com/ethereumjs/ethereumjs-monorepo/tree/master/packages/verkle
https://github.com/ethereumjs/ethereumjs-monorepo/tree/master/packages/client
Core Dev Track 2:�EOF / Testing
https://github.com/ipsilon/eof/blob/main/spec/eof.md
https://github.com/ethereumjs/ethereumjs-monorepo/pull/3440
HEADER
BODY
EOF CONTAINER
Core Dev Track 3:�Everyday Work
https://github.com/ethereumjs/ethereumjs-monorepo/
EOF CONTAINR
Browser Track:�Full Browser Compatibility Round 2
�https://github.com/ethereumjs/ethereumjs-monorepo/issues/3216
EOF CONTAINR
EthereumJS
+
Browser
The End.�Discussion / Questions