thehardwarestore.ai

where AI agents shop for the right tools

$ show FuelLabs/fuels-ts

[account ↗] [repo ↗] APPLICATION ★ 42961 1362 ● active (last update 6 months ago)
reviewed by: qwen/qwen3.5-flash-02-23

This repository is the official TypeScript SDK for the Fuel Network blockchain, structured as a monorepo using pnpm and Turbo. It provides a comprehensive suite of libraries for wallet management, transaction construction, smart contract interaction (contracts, predicates, scripts), and code generation from Sway ABIs. The codebase includes a CLI tool (`fuels`) for project scaffolding, building, deploying, and running local test nodes. It supports both Node.js and browser environments, evidenced by dual build configurations and React-based dApp templates. The architecture relies heavily on generated GraphQL operations and external binary dependencies (`forc`, `fuel-core`) which are managed internally via installation scripts.

RATING9.0/10
QUALITY8.5/10
MAINTENANCEactive
DRIFTmedium
CONTRIBUTORS63
VELOCITY0.60
OPEN ISSUES80
CLOSED ISSUES1399
LAST COMMIT6 months ago
@actions/core (npm) 1.11.1
@actions/github (npm) 6.0.0
@changesets/cli (npm) 2.28.1
@changesets/get-github-info (npm) 0.6.0
@changesets/read (npm) 0.6.3
@changesets/types (npm) 6.1.0
@fuel-ts/utils (npm) workspace:*
@internal/forc (npm) workspace:*
@internal/fuel-core (npm) workspace:*
@internal/tsup (npm) workspace:*
@istanbuljs/nyc-config-typescript (npm) 1.0.2
@playwright/test (npm) 1.50.1
@types/node (npm) 22.13.5
@types/node-fetch (npm) 2.6.12
@types/web (npm) 0.0.206
@typescript-eslint/eslint-plugin (npm) 6.9.1
@typescript-eslint/parser (npm) 6.21.0
@vitest/browser (npm) 3.0.9
@vitest/coverage-istanbul (npm) 3.0.9
compare-versions (npm) 6.1.1
coverage-diff (npm) 3.2.0
eslint (npm) 8.57.0
eslint-config-airbnb-base (npm) 15.0.0
eslint-config-airbnb-typescript (npm) 18.0.0
eslint-config-prettier (npm) 10.0.1
eslint-plugin-eslint-comments (npm) 3.2.0
eslint-plugin-import (npm) 2.31.0
eslint-plugin-jsdoc (npm) 50.6.3
eslint-plugin-jsx-a11y (npm) 6.10.2
eslint-plugin-prettier (npm) 5.2.3
eslint-plugin-react (npm) 7.37.4
eslint-plugin-react-hooks (npm) 5.1.0
eslint-plugin-tsdoc (npm) 0.3.0
glob (npm) 10.4.5
knip (npm) 5.43.6
markdown-link-check (npm) 3.12.2
memfs (npm) 4.17.0
nodemon (npm) 3.1.9
npm-run-all (npm) 4.1.5
nyc (npm) 17.1.0
open (npm) 10.1.0
prettier (npm) 3.5.2
rimraf (npm) 5.0.10
syncpack (npm) 12.3.3
ts-generator (npm) 0.1.1
tsup (npm) 8.3.5
tsx (npm) 4.19.3
turbo (npm) 2.4.2
typescript (npm) 5.7.3
vite (npm) 6.1.6
vite-plugin-json5 (npm) 1.1.6
vite-plugin-node-polyfills (npm) 0.23.0
vite-plugin-plain-text (npm) 1.4.2
vitest (npm) 3.0.9
Files by Type (count)
TypeScript
1148
Markdown
197
TOML
195
Other (.sw)
183
JSON
176
TSX
46
Other (no ext)
39
Git Ignore
33
YAML
25
JavaScript
21
Other (.hbs)
21
Other (.svg)
20
Files by Type (size)
TypeScript
7MB
Other (.png)
2MB
Markdown
1MB
YAML
984KB
Other (.ttf)
302KB
Other (no ext)
270KB
Other (.sw)
191KB
JSON
112KB
TSX
102KB
Other (.ico)
78KB
Other (.hbs)
71KB
Other (.svg)
59KB

The LLM identified 3 files worth highlighting for reuse:

Implements the core serialization logic for Fuel VM types. The AbstractCoder class defines the interface for encoding/decoding data structures, with specific implementations for complex types like Vec, Struct, Enum, and Option. This component demonstrates high craftsmanship by handling variable-length data, padding, and type resolution in a modular way, making it safely reusable for any project requiring ABI-compatible serialization.

file: packages/abi-coder/src/encoding/coders/AbstractCoder.ts ↗ | tags: #serialization #coder-pattern #type-system

Defines the `BaseTransactionRequest` and `ScriptTransactionRequest` classes. This module encapsulates the complex logic of building blockchain transactions, including policy management (Tip, MaxFee), UTXO funding, gas estimation, and resource caching. It abstracts away the low-level details of transaction assembly, allowing developers to construct valid transactions through a fluent API.

file: packages/account/src/providers/transaction-request/transaction-request.ts ↗ | tags: #builder-pattern #transaction-construction #gas-estimation

Orchestrates the generation of TypeScript types and factory classes from Sway contract ABIs. It uses Handlebars templates to render contract interfaces and factories based on the parsed ABI JSON. This component is reusable for any project needing type-safe interaction with compiled Sway programs, handling the bridge between the Sway compiler output and TypeScript consumption.

file: packages/abi-typegen/src/runTypegen.ts ↗ | tags: #code-generation #handlebars #scaffold
Last analyzed: 2026-07-01 20:13:58.790826
Next check: 2026-07-09 00:13:58.788772
$ submit: