Repository navigation
Publish as @samebase/convex-hosting with license notices and PR previews - #4
Merged
Merged
Conversation
setup wrote the same component registration and deploy script that the README and INTEGRATION.md already describe step by step, and init only printed instructions. The docs now point to those steps. upload and deploy stay: only a local process can read the built files. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The package, the CLI command (convex-hosting), the component (convexHosting), and the CONVEX_HOSTING_BASE_PATH build variable now share one name, and the repository metadata points at samebase/convex-hosting. The CLI still finds an instance that keeps the @convex-dev/static-hosting name staticHosting, so an app can switch packages without re-uploading. The examples' generated API files change only by the renamed key and import path; codegen needs a deployment. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Both packages carry their own copy of the Apache-2.0 LICENSE, and the hosting package lists NOTICE in its files, because npm does not include NOTICE by itself. NOTICE names the upstream static-hosting project and says that Samebase changed the files. The README says the same and that the project is not affiliated with or endorsed by Convex. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
npm shows only a package's own README, so the full documentation moves to packages/convex-hosting and the root README becomes a short overview of both packages. Upstream's 0.1.x to 0.2.x migration guide and its demo videos are gone; the docs link to the upstream guide instead. A new section explains how to switch from @convex-dev/static-hosting while keeping the staticHosting instance, and the changelog has a 0.3.0 entry. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
After the checks pass, CI publishes one preview of each package per commit to pkg.pr.new, so a consumer such as Scout can install a PR build before an npm release. pkg-pr-new is a locked dev dependency, and --pnpm packs with pnpm so catalog and workspace versions resolve. A failure now fails the job instead of being hidden. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
| # One pkg.pr.new preview per commit for both packages, so a consumer can install a PR build | ||
| # before an npm release. --pnpm packs with pnpm, which resolves catalog and workspace versions. | ||
| - name: Publish preview packages | ||
| run: pnpm exec pkg-pr-new publish --pnpm --packageManager=pnpm './packages/*' |
commit: |
A text replacement of static-hosting would turn npx @convex-dev/static-hosting into a package that does not exist, so the step now names the full package replacement. The React helpers look up convexHosting:getCurrentDeployment by default, so the steps now rename convex/staticHosting.ts or pass the old query explicitly. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Published Convex components almost always drop "convex" from their defineComponent name (flags, apiKeys, rateLimiter, staticHosting), because it adds nothing inside a Convex app. The component, its CLI default, and the default deployment query module (convex/hosting.ts) are now hosting. The npm package and the CLI keep the convex- prefix, where the name space is shared with non-Convex packages and commands. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Convex already has get-convex/convex-tanstack-start for querying Convex data from TanStack Start, so @samebase/convex-tanstack-start read like that integration. The new name places the adapter in the convex-hosting family and says what it does. It stays a separate package: its React 19 requirement would otherwise fail installs of React 18 apps that use only the hosting component. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
setupandinitare gone. They wrote the same three setup steps the README already shows.uploadanddeploystay, because only a local process can read the built files.@samebase/convex-hosting0.3.0 and the CLI command isconvex-hosting. The component ishosting(components.hosting), following published Convex components, which drop "convex" from their component name. The default deployment query module isconvex/hosting.ts, and the build variable isCONVEX_HOSTING_BASE_PATH. The repository metadata points at this repository, as npm trusted publishing requires.@samebase/convex-hosting-tanstack-start. Convex already hasget-convex/convex-tanstack-startfor querying data, so the old name read like that integration. It stays a separate package because its React 19 requirement would otherwise fail installs of React 18 apps.staticHostingwhen the default name has no instance, so an app can mount the new package with{ name: "staticHosting" }and keep its uploaded files and URLs. The README has a "Switching from @convex-dev/static-hosting" section.LICENSE. The hosting package also ships aNOTICEthat names upstream static-hosting and says Samebase changed the files. The READMEs say the project is not affiliated with or endorsed by Convex.packages/convex-hosting, because npm shows only the package's own README. The root README is a short overview. Upstream's 0.1.x migration guide and demo videos are removed; the docs link to the upstream guide.Publishing to npm is not part of this PR. The first publish of each new package name is manual, and a release workflow follows after it.
Naming evidence
defineComponentnames in published components:flags,revenuecat,notification,apiKeys,rateLimiter,workpool,r2,resend,staticHosting; only one of ten keeps "convex". Third-party npm packages mostly use@scope/convex-<capability>. A Codex design debate reached the same names.Verification
pnpm run buildandpnpm run check: all 4 packages build and typecheck, 103 tests passpnpm audit signatures,--prod, and--dev --audit-level=critical: no findingspnpm packof both packages: the hosting tarball hasREADME.md,LICENSE,NOTICE,CHANGELOG.md,INTEGRATION.md,dist, andsrcwith resolvedcatalog:versions; the adapter tarball installs outside the workspace and its Vite plugin loadsconvex-hosting --helplists onlydeployandupload🤖 Generated with Claude Code