Core library for parsing IPFS-related things 🦋
1. Guide 🌎
This library provides the easiest way to use v1 CID and other IPFS things in Dart and Flutter apps.
Give a ⭐ on GitHub repository and follow shinyakato.dev on Bluesky!
1.1. Getting Started ⚡
1.1.1. Install Library
With Dart:
dart pub add multiformats
Or With Flutter:
flutter pub add multiformats
1.1.2. Import
import 'package:multiformats/multiformats.dart';
1.1.3. Implementation
import 'package:multiformats/multiformats.dart';
import 'data.dart';
void main() {
final cid1 = CID.parse(stringCid);
final cid2 = CID.fromList(bytesCid);
cid1 == cid2; // => true
cid1.bytes; // => [0, 1, 85, 18, 32, 74, 151, 6, 128, 21, 242, 234, 243, 211, 164, 189, 89, 87, 0, 221, 71, 37, 76, 57, 227, 138, 247, 144, 216, 78, 220, 12, 83, 136, 10, 62, 117]
cid2.toString(); // => bafkreicks4diafps5lz5hjf5lflqbxkhevgdty4k66inqtw4brjyqcr6ou
final cid3 = CID.fromJson({
'/': stringCid,
});
cid3 == cid1 && cid3 == cid2; // => true
cid3.toJson(); // => {"/": "bafkreicks4diafps5lz5hjf5lflqbxkhevgdty4k66inqtw4brjyqcr6ou"}
final cid4 = CID.create('hello world');
cid4.toString(); // => bafkreifzjut3te2nhyekklss27nh3k72ysco7y32koao5eei66wof36n5e
}
1.2. Contribution 🏆
If you would like to contribute to multiformats, please create an issue or create a Pull Request.
There are many ways to contribute to the OSS. For example, the following subjects can be cocidered:
- There are request parameters or response fields that are not implemented.
- Documentation is outdated or incomplete.
- Have a better way or idea to achieve the functionality.
- etc...
You can see more details from resources below:
Or you can create a discussion if you like.
Feel free to join this development, diverse opinions make software better!
1.3. Support ❤️
The simplest way to show us your support is by giving the project a star at GitHub and Pub.dev.
You can also support this project by becoming a sponsor on GitHub:
You can also show on your repository that your app is made with multiformats by using one of the following badges:
[![Powered by multiformats](https://img.shields.io/badge/Powered%20by-multiformats-00acee.svg)](https://github.com/myConsciousness/atproto.dart)
[![Powered by multiformats](https://img.shields.io/badge/Powered%20by-multiformats-00acee.svg?style=flat-square)](https://github.com/myConsciousness/atproto.dart)
[![Powered by multiformats](https://img.shields.io/badge/Powered%20by-multiformats-00acee.svg?style=for-the-badge)](https://github.com/myConsciousness/atproto.dart)
1.4. License 🔑
All resources of multiformats is provided under the BSD-3
license.
Copyright 2023 Shinya Kato. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided the conditions.
Note
License notices in the source are strictly validated based on.github/header-checker-lint.yml
. Please check header-checker-lint.yml for the permitted standards.
1.5. More Information 🧐
multiformats was designed and implemented by Shinya Kato (@myConsciousness).