Skip to content

chore: rename package to chesscom-sdk, add examples and discovery metadata#29

Merged
denispianelli merged 1 commit into
mainfrom
chore/rename-to-chesscom-sdk
Jun 1, 2026
Merged

chore: rename package to chesscom-sdk, add examples and discovery metadata#29
denispianelli merged 1 commit into
mainfrom
chore/rename-to-chesscom-sdk

Conversation

@denispianelli

Copy link
Copy Markdown
Owner

Why

The package was published as the scoped @dpianelli/chesscom. A scoped, personal-namespace name reads as a one-off project and ranks poorly in npm search — a real drag on discovery for what is otherwise a feature-complete SDK. The unscoped chesscom-sdk is available on npm, and renaming now (3 days post-launch, ~no real users) is the cheapest it will ever be.

The repository, the public TypeScript API, and the version are all unchanged — this is a distribution/name change only.

What

  • Rename @dpianelli/chesscomchesscom-sdk across package.json, release-please-config.json, the lockfile, README badges/install/imports, docs (SPEC/STYLE/CONTRIBUTING/RELEASING), the issue template, and the src/index.ts header.
  • examples/ — four runnable, self-contained scripts (player profile + stats, lazy game streaming with filters, leaderboards/titled/puzzle, typed error handling). They import the package by name (chesscom-sdk) via Node self-referencing, so they double as copy-paste-real usage docs. Field access was checked against the actual schemas.
  • Keywords broadened for npm search (chess-com, chess-com-api, published-data-api, pgn, …); 15 GitHub topics set on the repo.
  • Lint/format hygiene — exclude the local .claude/ harness dir and examples/ from ESLint (type-aware linting needs a built project), and ignore .claude/ in Prettier. This is why npm run check was red locally but green in CI (.claude/ is untracked).

Follow-up after merge (manual, npm-side)

Trusted publishing (OIDC) can't bootstrap a package that doesn't exist yet, so:

  1. First publish manually to create it: npm run build && npm publish --access public (publishes chesscom-sdk@1.0.1).
  2. Configure trusted publishing on npmjs.com for chesscom-sdk → this repo's publish.yml, so release-please-driven releases resume via OIDC.
  3. Deprecate the old name: npm deprecate @dpianelli/chesscom "Renamed to chesscom-sdk — npm i chesscom-sdk".

Validation

npm run check passes — lint, format, typecheck, 111 tests.

🤖 Generated with Claude Code

…adata

Rename the npm package from @dpianelli/chesscom to the unscoped chesscom-sdk
for discoverability (the scoped name read as a personal project and ranks
poorly in npm search). The repository, public API, and version are unchanged.

- Update the name across package.json, release-please config, lockfile, README
  badges/install/imports, docs, and the issue template.
- Add an examples/ directory (profile, game streaming, leaderboards/puzzle,
  typed error handling) importing the package by name via self-reference.
- Broaden package keywords for npm search.
- Stop linting the local .claude/ harness directory and the examples/ dir
  (type-aware lint needs a built project); ignore .claude/ in Prettier too.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@denispianelli
denispianelli merged commit 80afb63 into main Jun 1, 2026
2 checks passed
@denispianelli
denispianelli deleted the chore/rename-to-chesscom-sdk branch June 1, 2026 21:54
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