An agent library built for Internet Computer, a plugin package for dart and flutter apps. Developers can build ones to interact with Dfinity's blockchain directly.
Package selection guidance compiled from public package information, community data, and project usage.
agent_dart is a Dart and Flutter plugin that enables developers to interact directly with the Internet Computer blockchain, part of Dfinity's decentralized ecosystem. Designed for Web3 applications, it provides tools to build agents—software entities that can make authenticated calls to canisters on the blockchain. This package simplifies integration with blockchain services in Flutter apps, supporting secure, efficient communication with decentralized applications. It’s ideal for developers aiming to create crypto-native mobile experiences with direct blockchain access.
Use cases
Building Flutter apps that interact with Internet Computer canisters
Creating decentralized identity solutions
Enabling wallet and token interactions
Developing dApps with direct blockchain communication
Integrating with Dfinity's smart contract infrastructure
Key features
Direct interaction with Internet Computer canisters
Support for agent-based authentication
Lightweight Dart/Flutter integration
Secure communication with blockchain nodes
Built-in support for IC-specific data types
Suitable for
Flutter developers building Web3 applications
Dart developers targeting the Internet Computer
Teams creating decentralized mobile apps
Blockchain engineers using Dart
Crypto-focused startups on Dfinity's ecosystem
Considerations
Requires familiarity with Internet Computer and canister architecture
Limited to Dfinity's blockchain platform
May require additional setup for local development
Depends on stable network connectivity to IC nodes
Not suitable for non-IC blockchain environments
Original README
Original README snapshot from the linked source repository. Visit the repository for the latest content.
Agent Dart
An agent library built for Internet Computer for Dart and Flutter apps.
candid_dart,
an automated candid builder for Dart classes
agent_dart_auth,
an extension plugin for authorization, used for Internet-Identity authorization.
💡 Examples
simple counter,
a simple counter demonstrate how to use agent_dart, a backend canister within.
auth counter,
a counter needs user's authorization from Internet-Identity,
demonstrate how to combine with agent_dart_auth.
ledger_app,
a ledger app demonstrate how to import seed-phrase and make transactions.
🧘♂️ Motivation
The Internet Computer is powered by blockchain and its major impact is to bring WebApp to be truly decentralized.
However, we are in the mobile internet era, even we can use Safari or Chrome on our cell phones.
But most average people, not crypto enthusiasts, are likely to use native mobile apps, major users are there.
It's important to attract these people to use DApps of Internet Computer,
by providing stable, fast, and fully integrated to Dfinity's blockchain.
We likely to provide further solution to balancing the "Decentralization" and "Efficiency".
But first things first, we have to make mobile native apps work.
agent-rs and agent-js are the actual lower level client-SDKs,
just like ether.js or web3.js of Ethereum's ecosystem.
This library is aiming to port and replicate features from them.
And this library is mainly for mobile apps to connect canisters,
not deploying contracts (you can do that if you want, but use dart directly).
We have tried our best to migrate most interface styles just like Javascript version,
but there are limitations and differences between different programming languages,
we will document them as much as possible.