Skip to content

Add missing pub.dev metadata, CHANGELOGs, LICENSE files, and example/ dirs #42

@MelbourneDeveloper

Description

@MelbourneDeveloper

Problem

None of the packages have the metadata pub.dev needs to score well. Several packages are missing required files entirely. This blocks production publishing.

What's Missing

1. pubspec.yaml metadata — ALL packages

No package has any of these fields:

Field Purpose Status
homepage: Links to project site on pub.dev MISSING from all 12 packages
topics: pub.dev search/discovery tags MISSING from all 12 packages
issue_tracker: Links to GitHub Issues MISSING from all 12 packages
documentation: Links to docs MISSING from all 12 packages

What to add to every pubspec.yaml:

homepage: https://github.com/MelbourneDeveloper/dart_node
issue_tracker: https://github.com/MelbourneDeveloper/dart_node/issues
documentation: https://github.com/MelbourneDeveloper/dart_node/tree/main/packages/<pkg_name>#readme
topics:
  - nodejs       # adjust per package
  - interop
  - javascript

2. CHANGELOG.md — missing or useless

Completely missing:

  • packages/dart_jsx/CHANGELOG.mddoes not exist
  • packages/dart_node_vsix/CHANGELOG.mddoes not exist

Exist but useless — every other package has this exact content for every version:

## 0.11.0-beta
- Early release

## 0.10.0-beta
- Early release

## 0.9.0-beta
- Early release

This tells users nothing. Each entry should describe what actually changed.

3. LICENSE — missing from 2 packages

  • packages/dart_jsx/LICENSEdoes not exist
  • packages/dart_node_vsix/LICENSEdoes not exist

All other packages have MIT LICENSE files. These two need the same.

4. example/ directory — missing from 11 of 12 packages

pub.dev checks for an example/ directory inside each package and scores accordingly.

Package Has example/?
reflux YES (has example/counter.dart)
dart_node_core NO
dart_node_express NO
dart_node_react NO
dart_node_react_native NO
dart_node_ws NO
dart_node_better_sqlite3 NO
dart_node_mcp NO
dart_jsx NO
dart_logging NO
dart_node_coverage NO
dart_node_vsix NO

Each package needs at minimum an example/example.dart (or example/<pkg_name>_example.dart) showing basic usage.

5. dart_logging — wrong SDK + missing nadz

File: packages/dart_logging/pubspec.yaml

Two issues:

  • SDK constraint is ^3.7.2 — every other package uses ^3.10.0
  • Missing required nadz dependency (project rules: "All packages require: austerity (linting), nadz (Result types)")

6. dart_jsx — wrong repository URL

File: packages/dart_jsx/pubspec.yaml

repository: https://github.com/user/dart_node/tree/main/packages/dart_jsx

Should be:

repository: https://github.com/MelbourneDeveloper/dart_node/tree/main/packages/dart_jsx

Checklist

  • Add homepage, topics, issue_tracker, documentation to all 12 pubspec.yaml files
  • Create CHANGELOG.md for dart_jsx and dart_node_vsix
  • Rewrite all existing CHANGELOGs with actual version descriptions
  • Create LICENSE (MIT) for dart_jsx and dart_node_vsix
  • Add example/ directory with working example to all 11 packages missing one
  • Fix dart_logging SDK constraint from ^3.7.2 to ^3.10.0
  • Add nadz dependency to dart_logging
  • Fix dart_jsx repository URL to use MelbourneDeveloper

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions