Liquid Stake with compassSOL for an 8.86% APY from staking, MEV + fees

Enjoy the freedom of liquid staking in Solana Defi while delegating your stake to the high performance Solana Compass validator. Stake or unstake at any time here, or with a Jupiter swap.

Benefit from our high staking returns and over 2 years experience operating a Solana validator, and receive additional yield from priority fees + MEV tips

Earn 7.1% APY staking with Solana Compass

Help decentralize and secure the Solana network delegating your stake to us and earn an impressive 7.1% APY yield on your SOL, while supporting us to create new guides and tools. Learn more

Stake your SOL

  1. Click to connect your wallet
  2. Enter the amount you wish to stake
  3. Kick back and enjoy your returns
  4. Unstake from your wallet or our staking dashboard

Earn 7.1% APY staking with Solana Compass

Help decentralize and secure the Solana network delegating your stake to us and earn an impressive 7.1% APY yield on your SOL, while supporting us to create new guides and tools.

Learn more

Breakpoint 2023: Introducing the New Web3.js

Published on 2023-11-09

Steven Luscher presents the new Web3.js with enhanced features and performance improvements.

The notes below are AI generated and may not be 100% accurate. Watch the video to be sure!

Summary

During the 2023 Breakpoint conference, Steven Luscher from Solana Labs introduced the revamped Web3.js, a crucial JavaScript library for blockchain development on the Solana network. He emphasized the evolution of Web3.js to become more efficient, customizable, and user-friendly, drawing an analogy to how consuming vegetables provides long-term health benefits compared to the fleeting satisfaction of sugary treats. The new Web3.js promises not just a tech-rich experience but also intends to lead developers towards a "pit of success" by its very design. The talk covered the ins and outs of the updated library, highlighting the ways it can significantly benefit developers and ultimately, the end-users of blockchain applications.

Key Points:

The New Web3.js: A Healthier Option for Developers

Comparing the new API to vegetables, Steven highlighted the importance of creating an API that is robust and sustainable in the long run. The aim for the new Web3.js is to deliver a library that promotes best practices, leading to more stable and successful applications without the common pitfalls of overly sugary APIs that can lead to technical debt and performance issues.

The Demand for a Better Web3.js

Feedback from the Solana community indicated a clear desire for a more customizable and less opinionated version of Web3.js. This includes the need for improved transaction confirmation strategies, support for multiple RPC connections, and the ability to batch requests. Developers have been asking for tree shaking capabilities, modern JavaScript support, and generally a more modular and slimmed-down library.

Performance Improvements and Reductions in Library Size

There have been significant improvements in the performance and size of the new Web3.js. The library has been reduced in size by as much as 14 times in typical applications, making it efficient for web environments and mobile users who may experience poor connectivity. Performance metrics also showed notable speed improvements in transaction signing and block hash operations.

Technical Deep Dive: Subscription APIs, Keys, Transaction Builders, and TypeScript

Steven went into detail about several technical aspects of the new library, including a simpler and more efficient transport interface, a dynamic and slim RPC API, modern subscription APIs for better error handling and gap recovery, improvements to cryptographic key management, unified transaction building, and enhanced TypeScript support.

Facts + Figures

  • The new Web3.js was described by Steven Luscher as being more like vegetables rather than candy; it aims for long-term developer success rather than short-term ease of use.
  • Web3.js is a JavaScript library pivotal for developers interacting with the Solana blockchain, including actions like minting NFTs and playing blockchain-based games.
  • Despite being downloaded 400,000 times a week, feedback indicated developers wanted more from the library.
  • Size reductions in the new Web3.js have been substantial, with a full browser bundle dropping from 90 kilobytes in the old version to 33 kilobytes in the new, a 2.7 times improvement—and potentially down to 17 kilobytes for environments supporting ED25519 natively.
  • An AWS service bundle for transaction handling was reduced in size from 5.4 megabytes in the old version to 1.7 megabytes with the new Web3.js.
  • Solana's official explorer saw a 26% reduction in first-page load size after replacing the old Web3.js with the new.
  • The RPC API of a new Web3.js is now TypeScript-based and can easily extend to support additional RPC methods.
  • The new subscriptions API leverages modern JavaScript features like async iterators, promising a more reliable and maintainable way to handle real-time data.
  • Keys now use native JavaScript crypto keys with polyfills for environments lacking native ED25519 support.
  • Transaction builders unify legacy and version transactions into a single, more efficient class.
  • TypeScript integration ensures developers catch errors early in the development process, reducing runtime errors.

Top quotes

  1. "I like to think of the new Web3JS API as more like vegetables. You eat them, you chew on them, they sharpen your teeth."
  2. "Folks from Mango told us, Steve, your transaction confirmation strategy just doesn't work for us. We need something different."
  3. "For the past six months or so, me and this crack team of developers... have been working on a new version of Web3JS."
  4. "Old Web 3JS was able to crank out 700 of those operations per second, 10 times more if you use the native ED25159 stuff in new browsers and new JavaScript environments."
  5. "Just migrating to the new Web3JS let you throw out a quarter of the code."
  6. "The subscriptions API is now based on modern JavaScript async iterators."
  7. "Keys now are based on native JS crypto keys."
  8. "We want to offer you APIs that are closer to your customers' desires."
  9. "Tell us if you find something broken. Tell us if we missed including something."
  10. "Solana FM, get at me. And let's get this done."

Questions Answered

What is Web3.js?

Web3.js is a JavaScript library used for interacting with the Solana blockchain. It allows developers to read and write data, and execute programs, essentially facilitating a direct line of communication with blockchain-based applications like games, services, or NFT platforms.

Why was a new version of Web3.js necessary?

The new version of Web3.js was created in response to community feedback that highlighted the need for a more customizable, efficient, and less opinionated API. Developers wanted better performance, a reduced library size, and features ripe for modern JavaScript practices.

How does the new Web3.js improve performance and size?

The new Web3.js improves performance by facilitating faster transactions, reduced latency, and a higher rate of operations per second. It reduces size by implementing tree shaking, which means projects only include the code they actually use, significantly slimming down the library footprint.

What are some of the technical improvements in the new Web3.js?

Technical improvements include a new RPC transport interface that's easier to work with, an RPC API that uses TypeScript for error reduction, a more robust and efficient subscription API that utilizes modern JavaScript async iterators, and native JavaScript crypto keys for better security and performance.

How does the new Web3.js leverage TypeScript to benefit developers?

The new Web3.js leverages TypeScript to help developers catch errors during the coding phase rather than in production, reducing runtime errors and ensuring a smoother development process and more reliable end-user experience.

Related Content

Breakpoint 2023 Recap - Day 1

Breakpoint 2023 commences with the live launch of Firedancer on testnet.

Breakpoint 2023: Securing FireDancer

FireDancer's security enhancements and strategies presented at Breakpoint 2023

Breakpoint 2023: Finding Utility for NFTs

An in-depth look into the expanding utility and application of NFTs in Web3.

Breakpoint 2023: Web3 Music

A panel discussion on the future and current state of Web3 music with industry pioneers and an independent artist.

Breakpoint 2023: Building a Creator Community

Industry experts discuss empowerment and innovation in the NFT creator community.

Breakpoint 2023: Gaming in Web3 Panel

Leaders in the Web3 gaming space discuss the challenges and opportunities within the industry.

Breakpoint 2023 Highlights

An overview of Solana's achievements and the future of decentralized networks presented at Breakpoint 2023.

Breakpoint 2023: Solana Foundation Update by Jonas Hahn

Jonas Hahn presents updates and announcements from Solana at Breakpoint 2023.

Breakpoint 2023: Auditor's Panel

Insights from leading blockchain auditors on the importance of security in the Solana ecosystem.

Breakpoint 2023: The Future of Finance and Blockchains with Visa

Experts from Visa and Worldpay discuss the advancement of finance using blockchains.

Breakpoint 2023: A Framework for On-Chain Gaming

An insight into the new on-chain gaming framework introduced at Breakpoint 2023.

Breakpoint 2023: OpenBook v2

Rebuilding Decentralized Finance Post-FTX Crisis: The Launch of OpenBook v2

Breakpoint 2023: tBTC comes to Solana

Discussions on the integration of tBTC, a decentralized Bitcoin, into the Solana ecosystem.

Breakpoint 2023: Web3 Social Won't Sell You Socks

An exploration of what Web3 social platforms offer beyond traditional economic models.

Breakpoint 2023: Closing Remarks

A heartfelt closure to Breakpoint 2023 emphasizing community contribution and project growth.