Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
d25d672
switch to component-hosted http
ianmacartney May 13, 2026
67f1b9d
stop tracking dist - use prepare instead
ianmacartney May 13, 2026
dd33a98
update readme/integration guide
ianmacartney May 13, 2026
5a3b19b
fix typo
sethconvex May 13, 2026
21668e3
better support for other base path
ianmacartney May 13, 2026
c259f3c
host app under /api
ianmacartney May 14, 2026
d13d2c5
remove more dist
ianmacartney May 14, 2026
633c87b
allow --build-cmd
ianmacartney May 14, 2026
d3cd241
use full path everywhere
ianmacartney May 15, 2026
dcf6154
get both urls at once authoriatively
ianmacartney May 21, 2026
d8ea9d7
update convex peer dep
ianmacartney Jun 22, 2026
d29abd1
fix rename
ianmacartney Jun 22, 2026
baf6cfa
update readme
ianmacartney Jun 22, 2026
24b3009
add SPA fallback back
ianmacartney Jun 22, 2026
a258771
add http tests
ianmacartney Jun 22, 2026
49d516c
add migration instructions
ianmacartney Jun 22, 2026
fb7de46
push spa lookup into query
ianmacartney Jun 22, 2026
48cc76c
rename to commit deployment
ianmacartney Jun 22, 2026
3294409
improve migration instructions
ianmacartney Jun 22, 2026
8037730
fixup! a0206ad
ianmacartney Jun 22, 2026
cc356f5
update peer dep back
ianmacartney Jun 22, 2026
653444c
improve --no-spa help text
ianmacartney Jun 22, 2026
897628f
fix outdated docs
ianmacartney Jun 22, 2026
50087d9
improve migration docs
ianmacartney Jun 22, 2026
e193a63
0.2.0-alpha.0
ianmacartney Jun 22, 2026
a3b264d
don't track dist
ianmacartney Jun 22, 2026
9b8d5ee
recover things from rebase
ianmacartney Jun 22, 2026
a92979f
call out cdnBaseUrl feature loss
ianmacartney Jun 22, 2026
3b261a9
recover things from rebase
ianmacartney Jun 22, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,6 @@ node_modules
*.swp
.mcp.json
next-example/
dist/
example/dist/

# Note: dist/ is NOT ignored - it's committed for GitHub installs
# (npm install github:get-convex/static-hosting#main)

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

instead using prepare: "npm run build" in package scripts

33 changes: 33 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,38 @@
# Changelog

## 0.2.0 Alpha

Component-owned HTTP and storage. **Breaking — redeploy your static assets after
upgrading.**

- The component now hosts its own HTTP endpoints and owns the file storage that
serves them. Wire it up with `app.use(staticHosting, { httpPrefix: "/" })` and
delete `convex/http.ts` + the upload-API re-exports from
`convex/staticHosting.ts`.
- Removed `registerStaticRoutes` and `exposeUploadApi` from the client API.
`exposeDeploymentQuery` and `getConvexUrl` remain if you use the UpdateBanner.
- The component is now named `staticHosting` (previously `selfHosting`). The CLI
invokes it directly via `npx convex run --component staticHosting lib:...`. If
you mount the component under a different name, pass
`--component <your-name>`.
- `useDeploymentUpdates` / `UpdateBanner` use `useQuery_experimental` and
default to `api.staticHosting.getCurrentDeployment`. If you don't surface
deployment updates, you no longer need to expose anything.
- Assets uploaded under 0.1.x lived in the app's storage — those references
won't resolve in 0.2.x. Run `npx @convex-dev/static-hosting deploy` to
repopulate.
- Recommended setup now prefixes your own HTTP routes with
`defineApp({ httpPrefix: "/api" })` so the static site can own the root
without the catch-all route shadowing them.
- SPA fallback is now configurable per deployment. Deploy with `--no-spa`
(`deploy` or `upload`) to make extension-less misses return 404 instead of
`index.html`. The setting is stored on the deployment record, so it travels
with the code you ship.
- The `cdnBaseUrl` override (from the removed `registerStaticRoutes`) is not
carried forward. In CDN mode, blob redirects always point at the deployment's
own `{origin}/fs/blobs`; pointing them at a separate CDN host is no longer
configurable. File an issue if you need it back.

## 0.1.4

- Added support for Windows
Expand Down
Loading
Loading