Pakete, Repositories und App-Kategorien suchen

Paketdetailsv0.1.24+1

agent_dart

Eine Agentenbibliothek für das Internet Computer, ein Plugin-Paket für Dart- und Flutter-Anwendungen. Entwickler können eigene Bibliotheken erstellen, um direkt mit der Blockchain von Dfinity zu interagieren.

30-Tage-Downloads
644
Likes
21
Pub-Punkte
60

Paket installieren

flutter pub add agent_dart

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

agent_dart ist ein Dart- und Flutter-Plugin, das Entwicklern die direkte Interaktion mit der Internet Computer Blockchain ermöglicht, Teil des dezentralen Ökosystems von Dfinity. Für Web3-Anwendungen konzipiert, bietet es Werkzeuge, um Agenten – Softwareentitäten – zu erstellen, die authentifizierte Aufrufe an Canister auf der Blockchain durchführen können. Dieses Paket vereinfacht die Integration von Blockchain-Diensten in Flutter-Apps und unterstützt sichere, effiziente Kommunikation mit dezentralen Anwendungen. Es ist ideal für Entwickler, die kryptonativen mobilen Erfahrungen mit direktem Blockchain-Zugriff schaffen möchten.

Anwendungsfälle

  • Flutter-Anwendungen erstellen, die mit Internet Computer-Kanistern interagieren
  • Erstellung dezentraler Identitätslösungen
  • Wallet- und Token-Interaktionen aktivieren
  • Entwicklung von dApps mit direkter Blockchain-Kommunikation
  • Integration mit der Smart Contract Infrastruktur von Dfinity

Hauptmerkmale

  • Direkte Interaktion mit Internet Computer Canister
  • Unterstützung für agentenbasierte Authentifizierung
  • Leichte Dart/Flutter-Integration
  • Sichere Kommunikation mit Blockchain-Knoten
  • Eingebaute Unterstützung für IC-spezifische Datentypen

Geeignet für

  • Flutter-Entwickler, die Web3-Anwendungen erstellen
  • Dart-Entwickler, die sich auf den Internet Computer konzentrieren
  • Teams, die dezentrale Mobile-Apps erstellen
  • Blockchain-Engineer, die Dart verwenden
  • Krypto-fokussierte Startups im Dfinity-Ökosystem

Hinweise

  • Erfahrung mit der Internet Computer- und Canister-Architektur erforderlich
  • Beschränkt auf die Blockchain-Plattform von Dfinity
  • Kann zusätzliche Einrichtung für die lokale Entwicklung erfordern
  • Abhängig von stabiler Netzwerkverbindung zu IC-Knoten
  • Nicht geeignet für nicht-IC-Blockchain-Umgebungen

Original-README

Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.

Agent Dart

Pub License

An agent library built for Internet Computer for Dart and Flutter apps.

Join the Discord channel: Discord


📃 Table of content


⚡️ Quick start

For Dart/Flutter app

The latest stable version is: pub

dependencies:
  agent_dart: ^latest-version
For iOS projects

When you're using the plugin in your Flutter projects that contains iOS platform, make sure you've done the following setup the build settings.

  1. Open ios/Runner.xcworkspace.
  2. Select Runner on left folder view, and Project -> Runner.
  3. Select Build Settings, All, Combined and type strip style in the filter input field.
  4. Switch Strip Style and select Non-Global Symbols.

Settings

For developing the plugin
  1. Clone and follow Prerequisites, and make sure your Flutter installed properly.

  2. MUST DO: Bootstrap your project

./scripts/bootstrap.sh

🚦 Prerequisites

🧰 Resources

📖 Documentation
🔧 Helpers/Tooling
  • 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.

🏆 Milestones

  • Milestone 1: ✅ Core features/libraries implementation.
  • Milestone 2: ✅ Enhanced built tool and more example apps
  • Milestone 3: 👷 Documentation and community driven development

👨‍💻 Contributing

By contributing to agent_dart, you agree that your contributions will be licensed under its MIT License.

  1. Fork this library and add your own branch like {feat|fix|test|dep}-{detail}.
  2. Follow the Prerequisites.
  3. Build rust dependencies for all supported platforms:
sh ./scripts/bootstrap
  1. Start the example.
cd example
flutter run
  1. Tests. (Unit Test and Integration Test)
flutter test
  1. Commit and make a pull request.

🔗 Reference and related projects

Feel free to list your project here, you can submit here.

⚠️ FAQ

Build rust libraries for iOS/MacOS
  • All rust method have to be written inside SwiftAgentDartPlugin.swift to avoid tree shaking by XCode.
Network problem in macOS
  • If you run example or build a flutter app, you may come up with this:
[macOS] SocketException: Connection failed (OS Error: Operation not permitted, errno = 1)
  • Go to macos/Runner of macOS.
  • Add following in DebugProfile.entitlements and ReleaseProfile.entitlements:
<key>com.apple.security.network.client</key>
<true/>

Kategorien

Abhängigkeiten

Abhängigkeiten 23 Einträge

Quell-Repository

Projekte, die dieses Paket verwenden