Skip to content

Commit

Permalink
fix(docs): introduction (#7083)
Browse files Browse the repository at this point in the history
* More Improvements to the Introduction Page

* Move Features of Web3.js v4 Section Back to Original Location

* Fix Broken Link
  • Loading branch information
danforbes authored Jun 5, 2024
1 parent 94f4f82 commit 7af8090
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 2 deletions.
24 changes: 23 additions & 1 deletion docs/docs/guides/getting_started/introduction.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,19 @@ This documentation is the entrypoint to Web3.js for developers. It covers [basic
- Custom output [formatters](https://docs.web3js.org/api/web3-utils/function/format)
- In compliance with the [Ethereum JSON-RPC Specification](https://ethereum.github.io/execution-apis/api-documentation/)

## Packages
## Using These Docs

There is a lot to learn about Web3.js! Here are some tips for developers of different skill levels. Remember, you can always [reach out directly](/guides/feedback/#urgent-questions-or-concerns) with Discord or Twitter if you're feeling stuck.

### For Beginner Web3.js Developers

New Web3.js developers should proceed to the [Quickstart](/guides/getting_started/quickstart) section to learn how to get started with Web3.js. Once you understand the basics, you may want to consider learning more about [providers](/guides/web3_providers_guide/), [wallets and accounts](/guides/wallet/), [smart contracts](/guides/smart_contracts/smart_contracts_guide), and how to [use Web3.js with the Hardhat development environment](/guides/hardhat_tutorial/).

### For Intermediate & Advanced Web3.js Developers

If you're already familiar with Ethereum and Web3.js development, you may want to review the Web3.js [package structure](#packages--plugins) and proceed directly to the [package-level documentation](/libdocs/ABI) and [API documentation](/api). Application developers may wish to review the [Web3.js configuration guide](/guides/web3_config/) or learn how to use Web3.js with tools like the [MetaMask](/guides/wallet/metamask) wallet or the [WalletConnect](/guides/wallet/web3_modal_guide/) wallet selection modal. Don't forget to review the [list of available plugins](https://web3js.org/plugins) or even [learn how to build your own Web3.js plugin](/guides/web3_plugin_guide/plugin_authors)!

## Packages & Plugins

Web3.js is a modular collection of packages, each of which serves a specific needs. This means developers don't need to install the entire Web3 library for most use cases. Instead, necessary packages are selectively installed for a more efficient development experience. Here is an overview of a selection of available packages:

Expand Down Expand Up @@ -61,6 +73,16 @@ Web3.js is a modular collection of packages, each of which serves a specific nee

- [**Web3 RPC Methods:**](/api/web3/namespace/rpcMethods) functions for making RPC requests to Ethereum using a given provider

### Plugins

Web3.js supports [plugins](/guides/web3_plugin_guide/), which are another way to encapsulate capabilities that support a specific need. There are plugins that exist to support native features, like those described by [EIPs](https://eips.ethereum.org/) as well as plugins that are designed to support specific smart contracts, middleware, or even other Ethereum-compatible networks. Visit the [Web3.js plugins homepage](https://web3js.org/plugins) to view a list of the most important Web3.js plugins, which includes:

- [EIP-4337 (Account Abstraction) Plugin](https://www.npmjs.com/package/@chainsafe/web3-plugin-eip4337)

- [EIP-4844 (Blob Transactions) Plugin](https://www.npmjs.com/package/web3-plugin-blob-tx)

- [zkSync Plugin](https://www.npmjs.com/package/web3-plugin-zksync)

## Advantages Over Other Libraries

- **Extensive Documentation and Community**: Web3.js is one of the most established Ethereum libraries, which means it benefits from extensive documentation and a large, active community. Web3.js is widely adopted and has been thoroughly tested in various production environments, and is compatible with a broad range of other tools and services in the Ethereum ecosystem.
Expand Down
2 changes: 1 addition & 1 deletion docs/docusaurus.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ const config = {
{
to: '/libdocs/ABI',
activeBasePath: '/libdocs',
label: 'Documentation',
label: 'Packages',
position: 'left',
},
{
Expand Down

1 comment on commit 7af8090

@github-actions
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Benchmark

Benchmark suite Current: 7af8090 Previous: 94f4f82 Ratio
processingTx 9348 ops/sec (±3.97%) 8833 ops/sec (±4.02%) 0.94
processingContractDeploy 40452 ops/sec (±6.63%) 35881 ops/sec (±7.95%) 0.89
processingContractMethodSend 19668 ops/sec (±6.95%) 18484 ops/sec (±4.82%) 0.94
processingContractMethodCall 37823 ops/sec (±6.19%) 37028 ops/sec (±4.19%) 0.98
abiEncode 44665 ops/sec (±7.08%) 39527 ops/sec (±7.28%) 0.88
abiDecode 30295 ops/sec (±7.99%) 27646 ops/sec (±8.72%) 0.91
sign 1584 ops/sec (±0.73%) 1571 ops/sec (±0.91%) 0.99
verify 371 ops/sec (±2.86%) 360 ops/sec (±2.83%) 0.97

This comment was automatically generated by workflow using github-action-benchmark.

Please sign in to comment.