Polkadart Logo
Ink

Getting Started with ink! Smart Contracts

The Polkadart ink! packages provide tools for interacting with ink! smart contracts from Dart and Flutter applications. You can use these packages to parse contract metadata, generate type-safe bindings, deploy contracts and interact with them.

The Polkadart ink! packages provide tools for interacting with ink! smart contracts from Dart and Flutter applications. You can use these packages to parse contract metadata, generate type-safe bindings, deploy contracts and interact with them.

Installation

Add the following to your pubspec.yaml file:

pubspec.yaml
dependencies:
  ink_abi: any
  ink_cli: any

Get the dependencies by running:

dart pub get

Sample usage

demo.dart

Future<void> main() async {
  // Parse contract metadata
  final json = jsonDecode(File('flipper.json').readAsStringSync());
  final abi = InkAbi(json);

  // Generate Dart bindings
  final generator = TypeGenerator(
    abiFilePath: 'flipper.json',
    fileOutput: FileOutput('generated_flipper.dart')
  );
  generator.generate();

  print('Contract ABI loaded and bindings generated');
}

This will load the Flipper contract metadata and generate type-safe Dart bindings for interacting with the contract.

The ink! packages allow you to work with smart contracts in a type-safe way, making contract interactions more reliable and maintainable.