/flow-js-sdk

Tools for building browser applications on Flow 🌊

Primary LanguageJavaScriptApache License 2.0Apache-2.0

Build Status

Flow Javascript SDK

Enabling developers to create dApps on the Flow blockchain using Javascript

A quick start guide can be found Here

Status

EARLY PUBLIC ALPHA

  • Last Updated: April 21st 2020

We are currently confident in how to consume most of the things in this repository, but most of the modules are in active development and their underlying implementations are subject to change.

All changes to a module will be reflected in the modules version number (including breaking changes) as a patch, until we are confident the module is working and stable, at which point we will release a v1.0.0. After a v1.0.0 release of a module we will strictly follow SemVer.

What is Flow?

Flow is a new blockchain for open worlds. Read more about it here.

Getting Started

A quick start guide can be found Here.

  • The Flow CLIs emulator can be used to develop against locally.
  • We have a React Example application for you to poke around too. If you want to run it locally, you will need the emulator running with this config.

Requirements

Please note, that some code provided - e.g. Object.fromEntries - will require Node version v12.0.0 or higher.

Overview

  • Higher Level

  • Lower Level

    • @onflow/protobuf (mvp) -- Dependency of send. Provides transport between the browser and the Flow blockchain.
    • @onflow/interaction (mvp) -- A data structure that can be built, resolved and sent to the Flow blockchain.
    • @onflow/response (mvp) -- A data structure that represents a response from the Flow blockchain. If the interaction returns something, it can be decoded without something like an ABI.
    • @onflow/encode (mvp) -- Transactions needs signatures, this module knows how to create the values that get signed.
  • Development Tools

    • @onflow/dev-wallet (mvp) -- A local fcl wallet provider for local development and testing.