A MangaDex API wrapper for Dart/Flutter

Overview

A MangaDex API wrapper for Dart

Open in Visual Studio Code Dart Test

Usage

A simple usage example:

import 'package:mangadex_api/mangadex_api.dart';

main() {
  var client = MDClient();

  client.getChapter('5e8bc984-5f3f-4fb1-b6ee-cf7f3812b112').then((chapter) {
    print(chapter!.title);
  });

  client.getMangaInfo('a96676e5-8ae2-425e-b549-7f15dd34a6d8',
      appendChapters: true, translatedLang: ['cs']).then((m) {
    print(m!.title['en']);
  });
}

Currently if you login, only requests where authentication is required will be done with your token, unless you set the useLogin parameter in a function as true.

Captcha

If the server returns a captcha, the library will throw a [CaptchaException], which, if handled, has the sitekey inside. After you solve the captcha, you need to pass the result to the [solveCaptcha] function.

What's implemented

  • Log-in
  • Getting Chapters
  • Getting Manga
  • Getting cover
  • Manga search
  • Getting user
  • Captcha
  • Getting group
  • Logged in user's followed manga chapter feed
  • Getting CustomList
  • Getting CustomList's chapter feed
  • Getting followed manga & group list

What's NOT yet implemented

  • Managing actions (Following, changing reading status etc.)
  • Creating accounts
  • And other stuff...

Don't forget to check the docs

Features and bugs

Please file feature requests and bugs at the issue tracker.

You might also like...

DiceBear API wrapper. DiceBear is an avatar library for designers and developers. Generate random avatar profile pictures!

dice_bear Flutter Package DiceBear API wrapper. DiceBear is an avatar library for designers and developers. Generate random avatar profile pictures! C

Oct 31, 2022

A wrapper around our Cocoa and Java client library SDKs, providing iOS and Android support for those using Flutter and Dart.

A wrapper around our Cocoa and Java client library SDKs, providing iOS and Android support for those using Flutter and Dart.

Ably Flutter Plugin A Flutter plugin wrapping the ably-cocoa (iOS) and ably-java (Android) client library SDKs for Ably, the platform that powers sync

Dec 13, 2022

A simple dart zeromq implementation/wrapper around the libzmq C++ library

dartzmq A simple dart zeromq implementation/wrapper around the libzmq C++ library Features Currently supported: Creating sockets (pair, pub, sub, req,

Dec 29, 2022

Unofficial wrapper for using Rapid7 insightOps logs (former LogEntries) with Dart.

An unofficial wrapper for using Rapid7 insightOps logs (former LogEntries) with Dart. This package is using logging package to do the actual logging,

Mar 3, 2021

A most easily usable JSON wrapper library in Dart

A most easily usable JSON response wrapper library in Dart! 1. About 1.1. Introd

Jan 4, 2022

An asynchronous Kaboom wrapper, written in Dart.

Kaboom Dart An asynchronous Kaboom wrapper, written in Dart. Usage To get started, initialize a Kaboom instane: // Initializes a new Kaboom instance.

Apr 7, 2022

Bhagavad Gita app using flutter & Bhagavad-Gita-API is A lightweight Node.js based Bhagavad Gita API [An open source rest api on indian Vedic Scripture Shrimad Bhagavad Gita].

Bhagavad Gita app using flutter & Bhagavad-Gita-API is A lightweight Node.js based Bhagavad Gita API [An open source rest api on indian Vedic Scripture Shrimad Bhagavad Gita].

Gita Bhagavad Gita flutter app. Download App - Playstore Web Application About Bhagavad Gita app using flutter & Bhagavad-Gita-API is A lightweight No

Apr 5, 2022

Beautiful Weather App using API with support for dark mode. Created by Jakub Sobański ( API ) and Martin Gogołowicz (UI, API help)

Beautiful Weather App using API with support for dark mode. Created by Jakub Sobański ( API ) and Martin Gogołowicz (UI, API help)

Flutter Weather App using API with darkmode support Flutter 2.8.1 Null Safety Beautiful Weather App using https://github.com/MonsieurZbanowanYY/Weathe

Nov 29, 2022

Howl.js wrapper for Flutter

flutter_web_howl Howl.js wrapper for Flutter https://pub.dev/packages/flutter_web_howl You can now include Howl.js using initializeHowl() anywhere in

Feb 8, 2022
Comments
  • ! ALWAYS MAKE SURE YOU'RE ON THE LATEST VERSION BEFORE SUBMITTING ISSUES !

    ! ALWAYS MAKE SURE YOU'RE ON THE LATEST VERSION BEFORE SUBMITTING ISSUES !

    Some API endpoints have changed relationships and now throw errors, this will be fixed on my end soon! (https://canary.discord.com/channels/833598287574990850/850131706022461440/886592857446694922)

    bug 
    opened by hernikplays 1
  • Added optional properties to chapter

    Added optional properties to chapter

    I specified what I tried to do in Issues.

    What's left to do is testing, I did so manually but it'd be wise to make an automated test. Every other automated test worked.

    I basically made the ChapterId a nullabe property, added a bunch of other nullabe properties and then I map them to a QueryParams just to get it to build a nice String.

    Since I changed the type of res from dynamic to the http.Response (You were already using the http.Response type under the hood anyways), I had to add a "!" to tell Dart that we know as a fact that exists,

    Snippet ahead.

    if (res.statusCode == 403 && res.headers['X-Captcha-Sitekey'] != null) {
          throw CaptchaException(res.headers['X-Captcha-Sitekey']!,
              message:
                  'You need to solve a captcha, check `.sitekey` for the sitekey.');
        }
    }
    
    enhancement 
    opened by mikolertesx 1
  • A way to get chapters ID.

    A way to get chapters ID.

    Seems like the "chapters" route is not entirely ready for use. The API route offers this. imagen

    The implementation is something like this. imagen

    If you were to solve the problem, how'd you go arround? Make the ID in chapter optional or nullable, and add more properties, such as volume, chapter, and mangaTitle.

    enhancement 
    opened by mikolertesx 1
Releases(1.0.3)
Owner
Matyáš Caras
Back-end/Desktop software dev + 日本語の学生
Matyáš Caras
A most easily usable RESAS API wrapper in Dart. With this library, you can easily integrate your application with the RESAS API.

A most easily usable RESAS API wrapper library in Dart! 1. About 1.1. What Is RESAS? 1.2. Introduction 1.2.1. Install Library 1.2.2. Import It 1.2.3.

Kato Shinya 2 Apr 7, 2022
A most easily usable Duolingo API wrapper in Dart. Duolingo4D is an open-sourced Dart library.

A most easily usable Duolingo API wrapper in Dart! 1. About Duolingo4D Duolingo4D is an open-sourced Dart library. With Duolingo4D, you can easily int

Kato Shinya 18 Oct 17, 2022
Federico 1 Feb 3, 2022
The lightweight and powerful wrapper library for Twitter Ads API written in Dart and Flutter 🐦

TODO: Put a short description of the package here that helps potential users know whether this package might be useful for them. Features TODO: List w

Twitter.dart 2 Aug 26, 2022
A Dart wrapper of the SMHI Open Data API

SMHI Open Data for Dart This package is in early development and some features may not work as intended. If so, feel free to submit a pull request. A

Lukas 1 Sep 19, 2022
An api wrapper for FortniteApi.io in dart.

Fortnite An api wrapper for FortniteApi.io in dart. Installation Add this to your package's pubspec.yaml file: dependencies: fortnite_api_io: any

Vanxh 3 Jan 29, 2022
Dart wrapper for mpesa daraja api by safaricom

mpesa-daraja-plugin-flutter-dart dart wrapper for mpesa daraja api by safaricom Features [Done]Lipa na mpesa [x] [inprogress] C2B [inprogress] B2B [in

Anselmo.Jr 11 Nov 6, 2022
Dart wrapper via `dart:js` for webusb

Dart wrapper via dart:js for https://wicg.github.io/webusb/ Features canUseUsb g

Woodemi Co., Ltd 1 Jan 25, 2022
Flutter wrapper widget for Avataaars API

Flutter_avataaar Flutter wrapper widget for Avataaars API - a free online avatar

null 8 Nov 11, 2022
An unofficial wrapper for the kdecole api

This is an UNOFFICIAL wrapper for the kdecole api How to use ? Login First, you need to create a Client() object : LOGIN AND PASSWORD ARE NOT YOUR ENT

null 5 Nov 2, 2022