Go to file
Marcus Hoffmann 0b8e3f3071 make tryGet* safer
* check casts (for list and map) at cast time by recreating the list/map
  instead of throwing on access.
* type warnings work now slightly differently:
  * when we expect nullable fields to be actually null within normal
    operation you can explicitly set the tryGet type param to an
optional type and mute the warning. Otherwise it'll warn that something
is null which we expect to something else.
2021-07-02 12:17:05 +02:00
example refactor: mostly use dart_openapi_codegen 2021-06-25 12:40:03 +02:00
lib make tryGet* safer 2021-07-02 12:17:05 +02:00
test fix test after removing user field 2021-07-01 18:16:47 +02:00
.gitignore Initial commit 2020-12-28 12:01:03 +01:00
.gitlab-ci.yml fix: Typo and wellknown parsing 2021-03-01 11:38:53 +01:00
CHANGELOG.md fix: Log filter in wrong direction 2021-06-10 09:21:20 +02:00
CONTRIBUTING.md fix: Typo and wellknown parsing 2021-03-01 11:38:53 +01:00
LICENSE docs: Update license to MIT 2021-01-08 13:14:03 +01:00
README.md refactor: mostly use dart_openapi_codegen 2021-06-25 12:40:03 +02:00
analysis_options.yaml refactor: mostly use dart_openapi_codegen 2021-06-25 12:40:03 +02:00
pubspec.yaml refactor: mostly use dart_openapi_codegen 2021-06-25 12:40:03 +02:00

README.md

Matrix API Lite

This package is a dead simple data model over the client-server specification of https://matrix.org and is mostly used as a base for a more complete Matrix SDK. It doesn't contain any logic and just provides methods for all API endpoints and json parser for all objects. It is intended to be as close to the specificaton as possible so we get a 1:1 relationship with the API. More complex logic like a sync loop or a data model for rooms should be implemented in a more complete Matrix SDK.

Usage

A simple usage example:

import 'package:matrix_api_lite/src/matrix_api.dart';

void main() async {
  final api = MatrixApi(homeserver: Uri.parse('https://matrix.org'));
  final capabilities = await api.requestServerCapabilities();
  print(capabilities.toJson());
}

Generated code

The files in lib/src/generated are generated by dart_openapi_codegen from matrix-doc. See the README.md in dart_openapi_codegen for more information.