Skip to content

Add per-package LICENSE, examples, and CHANGELOG for pub.dev compliance - #2

Merged
AndroidPoet merged 5 commits into
mainfrom
chore/pubdev-compliance
Jun 27, 2026
Merged

AndroidPoet merged 5 commits into
mainfrom
chore/pubdev-compliance

Conversation

@AndroidPoet

Copy link
Copy Markdown
Owner

Brings every publishable package up to pub.dev / pana standards.

What

  • LICENSE (MIT, copied from repo root) in all four packages.
  • example/README.md in all four — focused usage snippets pana recognizes as the package example.
  • CHANGELOG.md for supabase_chat_e2ee (the only one missing it).

Verified

  • dart analyze packages → No issues found (static-analysis gate, 50/50).
  • dart format → 0 of 48 files changed.
  • pana on the core supabase_realtime_kit → 150/160.

The 150 vs 160 ceiling

The only lost 10 points is Platform support / WASM: package:supabase (via storage_client) is not WASM-compatible, so any library depending on it is capped at 150. Dependency-free libraries reach 160; that is not attainable here without dropping supabase.

The three dependent packages (supabase_chat, _ui, _e2ee) can't be pana-scored standalone yet because they depend on the unpublished core — pana simulates the pub.dev sandbox and strips path overrides. They inherit the same ~150/160 once published in order: supabase_realtime_kit → supabase_chat → _e2ee/_ui.

…dev compliance

Each publishable package now carries its own MIT LICENSE, an example/README.md
recognized by pana as a usage example, and (for supabase_chat_e2ee) a CHANGELOG.
The core package scores 150/160 on pana; the remaining 10 (WASM) is capped by
the upstream supabase dependency, which is not WASM-compatible.
Replace the thin 21-line placeholder with complete docs: ChatView and
EncryptedChatView usage, lifecycle behavior, per-widget API tables for every
exported building block (MessageBubble, MessageComposer, TypingIndicator,
EncryptedChatBanner), a custom-layout example, and theming notes.
Console walkthrough of the encryption: identity generation, public-bundle
publish, matching safety numbers (MITM check), strict-mode refusing an
unverified send, the exact ciphertext the server stores, decryption, a
multi-turn Double Ratchet conversation, and a swapped-identity-key rejection.
A CLI walkthrough is expected to print; ignore the lint file-wide so
dart analyze stays clean across the workspace.
@AndroidPoet
AndroidPoet merged commit dea19fd into main Jun 27, 2026
1 check passed
@AndroidPoet
AndroidPoet deleted the chore/pubdev-compliance branch June 27, 2026 12:43
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