Flow Client Library (FCL)
Introducing @onflow/fcl
Flow Client Library (FCL) enables applications to easily integrate with all FCL-compatible wallets and other services (e.g. (Comming Soon) profiles, private information, notifications). This offers developers a strong foundation to compose their apps with existing building blocks. It’s currently supported for browser applications, and will be extended to other platforms.
With FCL, you can:
- Integrate all compatible wallets without any custom code or code injection
- Authenticate users
- Query the Flow Blockchain
- Send transactions (e.g. initializing resources, sending assets, purchasing, etc.)
- Sign transactions through wallet integration avoiding key management
With FCL, you will eventually be able to:
- Personally sign data via FCL Compatible Wallets
- Request Additional User info like Emails
While it would be possible to create a Flow wallet as a browser plugin, we specifically created @onflow/fcl
so that web-based dapps don’t have to depend on browser
plugins. @onflow/fcl
is able to connect browser-based dapps to a wallet service, or a wallet installed on your phone
or running on your local computer without introducing the security risks that can come from installing
a browser plugin.
Status
- Last Updated: Mar 2nd 2021
- Stable: Yes
- Risk of Breaking Change: Low
The things that exists probably won't be changing much externally, we will be adding new functionality in the near future.
Wallet Discovery
FCL also eliminates the need for dapp developers to write code to integrate their user's preferred wallet into
their application. Instead,@onflow/fcl
uses a secure discovery protocol that wallets can implement to connect
to @onflow/fcl
. The end result is dapps using @onflow/fcl
automatically integrate all compatible wallets without their developers
needing to write any custom code!
Limitless Development
@onflow/fcl
enables cross-platform dapps. By not depending on JavaScript injection as a mechanism for connecting dapps with wallets,
native desktop dapps and mobile dapps can connect to the same wallet software as browser dapps.
Getting Started with FCL
To use the Flow JavaScript SDK in your application, install using yarn or npm
npm i -S @onflow/fcl @onflow/types
Learn to use @onflow/fcl
: Flow App Quickstart
Requirements
Please note, that some code provided - e.g. Object.fromEntries
- will require Node version v12.0.0 or higher
.