Vitalik Buterin pfp
Vitalik Buterin
@vitalik.eth
Dependency minimalism (writing software that deliberately tries to have as few dependencies as practical) is a really underrated virtue imo. Every single dependency is a risk that "something will go wrong" during someone's installation process. Installing projects with hundreds of dependencies and walking through errors can be incredibly frustrating.
35 replies
140 recasts
628 reactions

✳️ dcposch on daimo pfp
✳️ dcposch on daimo
@dcposch.eth
Strongly agree. The best software are things like SQLlite and noble/curves that are "as little code as possible but no less", tight dependency hygiene, thorough tests and do one thing well
2 replies
15 recasts
69 reactions

Samuel ツ pfp
Samuel ツ
@samuellhuber.eth
any tips / pointers on getting there for frontend projects? been thinking alot about this in the context of all the DEFI Frames we're building at dTech Typescript as ecosystem is filled with dependency hell
1 reply
1 recast
5 reactions

Darryl Yeo 🛠️ pfp
Darryl Yeo 🛠️
@darrylyeo
My personal suggestions: • React → Svelte • CSS-in-JS → vanilla CSS • wagmi → viem
2 replies
0 recast
3 reactions

Samuel ツ pfp
Samuel ツ
@samuellhuber.eth
Is svelte as reactive? I like the mental model of JSX, bind to object and it auto updates Haven’t used svelte before. Same thing? So easy switch?
1 reply
0 recast
1 reaction

Darryl Yeo 🛠️ pfp
Darryl Yeo 🛠️
@darrylyeo
React is inherently not reactive; it ships an entire virtual DOM object diffing engine to your client and to optimize it you have to manually tell it how to track dependencies. Svelte just compiles all the bindings and auto-update logic (“fine-grained reactivity”) for you and spits out a super tiny bundle. Best parts for me are automatic vanilla CSS scoping and full access to the greater vanilla JavaScript ecosystem. No lock-in to the React Hooks DSL. Maybe not the easiest switch if you’re already super deep into the React ecosystem and not starting a project from scratch, but also maybe nothing an LLM couldn’t solve :)
1 reply
0 recast
1 reaction

Darryl Yeo 🛠️ pfp
Darryl Yeo 🛠️
@darrylyeo
Very easy learning curve IMO, can learn it in an hour or so assuming HTML/CSS/JavaScript familiarity https://svelte.dev/tutorial/svelte/welcome-to-svelte
1 reply
0 recast
0 reaction

Samuel ツ pfp
Samuel ツ
@samuellhuber.eth
Okay and how does it help in less dependencies ? Got the rendering part, intrigued to try though 2 concerns 1) incompatibility with expo (mobile) 2) web3 / fc ecosystem packages working? Is it fine in your experience ? Everything always has a react way
1 reply
0 recast
1 reaction

Darryl Yeo 🛠️ pfp
Darryl Yeo 🛠️
@darrylyeo
1) Expo is React Native only. Best comparable alternative is Svelte Native based on NativeScript, but not actively maintained. You’d want to pair Svelte with a native webview wrapper like Capacitor or Tauri. 2) Browser APIs and vanilla JS packages (viem, @reown WalletKit, etc.) work excellently. In my experience you generally don’t need dedicated wrapper packages for everything like in React. Can’t speak much for Farcaster ecosystem specifically outside of stuff I’ve written myself from scratch, but will be diving further with @blockhead.
1 reply
0 recast
1 reaction