Skip to content

docs(dart): align morph_core and morph_storage package metadata (#33)#34

Merged
cemal-yilmaz-bt merged 1 commit into
f/pluginfrom
docs/dart-package-metadata-issue-33
May 4, 2026
Merged

docs(dart): align morph_core and morph_storage package metadata (#33)#34
cemal-yilmaz-bt merged 1 commit into
f/pluginfrom
docs/dart-package-metadata-issue-33

Conversation

@cemal-yilmaz-bt
Copy link
Copy Markdown

@cemal-yilmaz-bt cemal-yilmaz-bt commented May 4, 2026

Summary

Refresh packages/dart/morph_core/README.md and pubspec.yaml descriptions to reflect shipped parity per docs/dart-parity.md (MorphClient, MorphRuntime, host pipeline, plugins, OAuth helpers).

Correct morph_storage pubspec description: in-memory storage for tests/VM; browser storage remains (TS); Flutter apps use morph-data-store via morph_core_storage.

Closes #33

Made with Cursor

Summary by Sourcery

Align Dart morph_core and morph_storage package metadata and documentation with the current TypeScript parity and storage architecture.

Enhancements:

  • Refresh morph_core pubspec description to reflect current client, runtime, pipeline, and shared-type parity with the TypeScript core package.
  • Clarify morph_storage pubspec description to position it as an in-memory storage provider/plugin for tests and VM usage, and to document the recommended storage options for browser and Flutter apps.

Documentation:

  • Update morph_core README to describe shipped MorphClient/MorphRuntime, host pipeline, plugin behavior, and OAuth/JWT helpers in line with documented Dart parity.

Refresh README and pubspec descriptions with shipped parity (runtime,
OAuth helpers, host pipeline, plugins). Correct morph_storage scope:
in-memory for VM/tests, not browser-storage parity.

Co-authored-by: Cursor <cursoragent@cursor.com>
@sourcery-ai
Copy link
Copy Markdown

sourcery-ai Bot commented May 4, 2026

Reviewer's guide (collapsed on small PRs)

Reviewer's Guide

Updates Dart morph_core documentation and package descriptions to reflect newly shipped runtime, pipeline, plugin, and OAuth parity with the TypeScript core, and clarifies morph_storage’s purpose as an in-memory storage provider for tests/VM versus browser/Flutter usage.

File-Level Changes

Change Details Files
Refresh morph_core README to describe shipped runtime/pipeline/plugins/OAuth parity and backlog items.
  • Replaced note about MorphClient.init being unimplemented with description of shipped MorphClient, MorphRuntime, HostPipeline.hostFetch, plugin install surface, and MorphPlugin behavior aligned with docs/dart-parity.md.
  • Documented availability of public OAuth helpers, JWT helpers, and aligned types with packages/ts/core exports.
  • Updated Typed MorphConfig/MorphOptions section to state they remain backlog work while config continues to be validated from decoded JSON maps with a reference to issue Dart SDK: full parity with TypeScript Morph API Client #3.
packages/dart/morph_core/README.md
Align pubspec descriptions for morph_core and morph_storage with their current roles and TS parity.
  • Rewrote morph_storage description to emphasize it as an in-memory StorageProvider and MorphPlugin for tests/VM, clarifying that browser storage remains in @morph/browser-storage (TS) and production Flutter apps typically use morph-data-store via morph_core_storage.
  • Updated morph_core description to describe an implemented Dart port of @morph/core including MorphClient, config validation, MorphRuntime, HTTP host pipeline, plugin composition, and shared types at parity with packages/ts/core.
packages/dart/morph_storage/pubspec.yaml
packages/dart/morph_core/pubspec.yaml

Possibly linked issues

  • #(not provided, docs/dart-parity metadata refresh issue): PR updates morph_core README/pubspec and morph_storage pubspec exactly as described in the Dart metadata issue.

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 4, 2026

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 93a18f61-3e7c-4975-a5dc-114cc27d19a7

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/dart-package-metadata-issue-33

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@sourcery-ai sourcery-ai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey - I've reviewed your changes and they look great!


Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

@cemal-yilmaz-bt cemal-yilmaz-bt merged commit 8c9d9cf into f/plugin May 4, 2026
6 checks passed
@cemal-yilmaz-bt cemal-yilmaz-bt deleted the docs/dart-package-metadata-issue-33 branch May 4, 2026 19:46
Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the documentation and package descriptions for morph_core and morph_storage to reflect the implementation of core features such as MorphClient, MorphRuntime, and the plugin system. Feedback was provided to correct an inaccuracy in the README regarding the status of MorphOptions, which is already implemented as a typed DTO.

Comment on lines +18 to +19
Typed **`MorphConfig` / strong `MorphOptions`** DTOs (vs `Map<String,dynamic>`) remain
**backlog**; config is validated as decoded JSON maps for now ([#3](https://github.com/burgan-tech/morph-api-client/issues/3)).
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The README states that MorphOptions DTOs remain in the backlog and compares them to Map<String, dynamic>. However, the current implementation already uses a typed MorphOptions class in the MorphClient.init signature (as seen in packages/dart/morph_core/lib/src/morph_client.dart). This part of the documentation should be updated to reflect that MorphOptions is already implemented as a strong DTO.

Suggested change
Typed **`MorphConfig` / strong `MorphOptions`** DTOs (vs `Map<String,dynamic>`) remain
**backlog**; config is validated as decoded JSON maps for now ([#3](https://github.com/burgan-tech/morph-api-client/issues/3)).
Typed **`MorphConfig`** DTOs (vs `Map<String,dynamic>`) remain
**backlog**; config is validated as decoded JSON maps for now ([#3](https://github.com/burgan-tech/morph-api-client/issues/3)).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant