Conversation
Bumps the all-dependencies group with 1 update: [@nuxt/eslint](https://github.com/nuxt/eslint/tree/HEAD/packages/module). Updates `@nuxt/eslint` from 1.14.0 to 1.15.1 - [Release notes](https://github.com/nuxt/eslint/releases) - [Commits](https://github.com/nuxt/eslint/commits/v1.15.1/packages/module) --- updated-dependencies: - dependency-name: "@nuxt/eslint" dependency-version: 1.15.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: all-dependencies ... Signed-off-by: dependabot[bot] <support@github.com>
…dencies-c88732588d
- Add GitHub Actions for staging, production, and PR previews. - Move D1 bindings to `nuxt.config.ts` using `$env` overrides. - Create `wrangler.dev.jsonc` for local development. - Update scripts to support environment-aware builds and migrations. - Update documentation for new deployment and database workflows. - Upgrade Bun to 1.3.9 and update various dev dependencies. Establish a robust CI/CD pipeline that handles database migrations and worker versioning. Moving D1 configuration to Nuxt's environment overrides prevents Nitro build conflicts while ensuring the correct database is bound per environment. The split wrangler configuration allows for clean local development without interfering with production build settings.
Wrap long lines of text and adjust whitespace to improve readability. Rename the database section for better consistency and update internal links to prevent broken references. These adjustments make the documentation easier to maintain and read across different platforms.
Remove the emoji from the "D1 Database" header and update internal links. This ensures cleaner anchor navigation and consistent formatting throughout the documentation.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…ronment 🚀 Implement multi-environment deployment and D1 configuration, fixes #13
Remove GitHub Actions deployment workflow and transition to Cloudflare Workers Builds for automated deployments. This change centralizes environment configuration into dedicated wrangler.jsonc and wrangler.staging.jsonc files, simplifying the CI/CD pipeline and reducing reliance on external secrets for database IDs. Migration scripts are updated to reference these config files directly for better reliability and developer experience. Documentation in AGENTS.md is updated to reflect the new workflow.
Add HUMAN_INTERVENTION_REQUIRED.md for manual setup steps. Update README.md to reflect the new multi-worker architecture. Introduce environment-specific wrangler configuration files. Update worker-configuration.d.ts with the DB binding. The deployment strategy is shifted from GitHub Actions to Cloudflare Workers Builds to leverage native platform features and simplify the pipeline. Splitting staging and production into separate Workers improves isolation. Environment-specific wrangler configs ensure correct D1 bindings during migrations and builds.
Remove the manual intervention guide now that the Cloudflare worker reconfiguration and deployment pipeline setup are complete. The file was intended as a temporary checklist for manual steps required to transition to the new deployment workflow. Since these steps are finished, the documentation is no longer necessary.
Add snapshot deployment commands and update staging deployment logic. Reorganize database, test, and utility scripts for better readability. Remove the obsolete deploy:nonprod script. The scripts are reorganized to improve developer experience and maintainability. New snapshot deployment commands are added to support versioned uploads, while the staging deployment is updated to perform a full deploy. Obsolete scripts are removed to reduce clutter and related commands are grouped together logically.
Refine the language describing DaisyUI's open-source nature to be clearer and more professional. Replace the vague phrase "is it" with "is the full package" to improve the quality and readability of the documentation.
Add nodejs_compat and no_nodejs_compat_v2 flags to wrangler.jsonc, wrangler.dev.jsonc, and wrangler.staging.jsonc. These flags enable Node.js API support within the Cloudflare Workers runtime. Including them ensures that the application has access to necessary Node.js polyfills while explicitly opting out of the v2 compatibility mode to maintain environment stability.
Update generated types and add NodeJS.ProcessEnv definitions. Synchronize types with the latest Wrangler generation and include NodeJS.ProcessEnv mappings for Cloudflare bindings. This enables better type safety and autocompletion when using environment variables in Node.js compatibility mode.
Deploying with
|
| Status | Name | Latest Commit | Updated (UTC) |
|---|---|---|---|
| ✅ Deployment successful! View logs |
affirm-staging | 291d6c8 | Feb 12 2026, 11:59 PM |
There was a problem hiding this comment.
Pull request overview
This PR updates the project’s Cloudflare Workers + D1 multi-environment setup (production vs staging vs local dev), refreshes a set of tooling dependencies, and updates docs/scripts to support environment-aware builds/migrations/deploys.
Changes:
- Add environment-specific Wrangler configs (
wrangler.staging.jsonc,wrangler.dev.jsonc) and update productionwrangler.jsonc(incl. Node.js compatibility flags). - Introduce Nuxt
$envoverrides and update scripts so builds explicitly target--envName=production|staging, plus environment-targeted D1 migration commands. - Bump dependencies/tooling (Bun in CI, Wrangler, Drizzle Kit, Vue, Trunk linters) and regenerate Cloudflare runtime types.
Reviewed changes
Copilot reviewed 9 out of 11 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
wrangler.staging.jsonc |
New Wrangler config for staging worker + staging D1 binding. |
wrangler.dev.jsonc |
New Wrangler config intended for local dev workflows and local D1 migrations. |
wrangler.jsonc |
Production Wrangler config updated (adds compatibility flags, reorganizes D1 config). |
nuxt.config.ts |
Adds Nitro Cloudflare config defaults and $env overrides to inject env-specific D1 bindings at build time. |
package.json |
Updates scripts for env-aware builds, migrations, and deploy commands; bumps some deps. |
worker-configuration.d.ts |
Regenerated Wrangler runtime/bindings types (incl. env var typings). |
bun.lock |
Lockfile updates reflecting dependency bumps. |
README.md |
Documentation updates for branch protections, multi-worker deployment, and D1 workflows. |
AGENTS.md |
Updates agent/developer workflow documentation to match the new deployment model. |
.trunk/trunk.yaml |
Bumps Trunk-managed tool versions. |
.github/workflows/ci.yaml |
Updates CI to use Bun 1.3.9. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| For manual/local deploys (rarely needed): | ||
|
|
||
| - **Deploy to Production**: `bun run deploy` (builds + `wrangler deploy -c wrangler.jsonc`) | ||
| - **Deploy to Staging**: `bun run deploy:staging` (builds + `wrangler versions upload -c wrangler.staging.jsonc`) |
There was a problem hiding this comment.
This says bun run deploy:staging uses wrangler versions upload, but package.json currently runs wrangler deploy -c wrangler.staging.jsonc for staging. Please update this line (or the script) so the agent guide matches the actual deployment command.
| - **Deploy to Staging**: `bun run deploy:staging` (builds + `wrangler versions upload -c wrangler.staging.jsonc`) | |
| - **Deploy to Staging**: `bun run deploy:staging` (builds + `wrangler deploy -c wrangler.staging.jsonc`) |
| "deploy:snapshot": "bun run-s build:staging deploy:snapshot:wrangler", | ||
| "deploy:snapshot:wrangler": "bun run wrangler versions upload -c wrangler.staging.jsonc", | ||
| "deploy:staging": "bun run-s build:staging deploy:staging:wrangler", | ||
| "deploy:staging:wrangler": "bun run wrangler deploy -c wrangler.staging.jsonc", |
There was a problem hiding this comment.
deploy:staging:wrangler runs wrangler deploy -c wrangler.staging.jsonc, but both README.md and AGENTS.md describe staging deploy as “versions upload”. Please pick one approach and make scripts + docs consistent (either change this to wrangler versions upload or update the docs to say staging is deployed).
| "deploy:staging:wrangler": "bun run wrangler deploy -c wrangler.staging.jsonc", | |
| "deploy:staging:wrangler": "bun run wrangler versions upload -c wrangler.staging.jsonc", |
| - `bun run build:staging` (builds for staging — uses `--envName=staging`) | ||
| - **Deploy** (prefer Workers Builds — see [Deployment](#deployment)): | ||
| - `bun run deploy` (build + deploy to production via `wrangler.jsonc`) | ||
| - `bun run deploy:staging` (build staging + upload version via `wrangler.staging.jsonc`) |
There was a problem hiding this comment.
deploy:staging is described here as “upload version”, but package.json defines deploy:staging:wrangler as wrangler deploy -c wrangler.staging.jsonc (a deploy/promotion). Please align the README wording with the actual script behavior, or change the script to use wrangler versions upload if that's the intended staging flow.
| - `bun run deploy:staging` (build staging + upload version via `wrangler.staging.jsonc`) | |
| - `bun run deploy:staging` (build + deploy to staging via `wrangler.staging.jsonc`) |
| # Production: build + promote | ||
| bun run deploy | ||
|
|
||
| # Staging: build + upload version |
There was a problem hiding this comment.
This section labels staging manual deployment as “build + upload version”, but bun run deploy:staging currently runs wrangler deploy (not wrangler versions upload). Either adjust the wording here, or update the staging deploy script to match the documented “upload version” approach.
| # Staging: build + upload version | |
| # Staging: build + deploy |
Bump @nuxt/eslint from 1.14.0 to 1.15.1 in the all-dependencies group
Bumps the all-dependencies group with 1 update: @nuxt/eslint.
Updates
@nuxt/eslintfrom 1.14.0 to 1.15.1updated-dependencies:
dependency-version: 1.15.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: all-dependencies
...
Signed-off-by: dependabot[bot] support@github.com
🚀 Implement multi-environment deployment and D1 configuration
nuxt.config.tsusing$envoverrides.wrangler.dev.jsoncfor local development.Establish a robust CI/CD pipeline that handles database migrations and
worker versioning. Moving D1 configuration to Nuxt's environment
overrides prevents Nitro build conflicts while ensuring the correct
database is bound per environment. The split wrangler configuration
allows for clean local development without interfering with production
build settings.
📝 (README.md): reformat text and update section headings
Wrap long lines of text and adjust whitespace to improve readability.
Rename the database section for better consistency and update internal
links to prevent broken references. These adjustments make the
documentation easier to maintain and read across different platforms.
📝 Simplify database section header in README
Remove the emoji from the "D1 Database" header and update internal links.
This ensures cleaner anchor navigation and consistent formatting
throughout the documentation.
Fix deploy:staging
Co-authored-by: Copilot 175728472+Copilot@users.noreply.github.com
Use env vars for db:migrate:*
Co-authored-by: Copilot 175728472+Copilot@users.noreply.github.com
Remove typecast, it's only a warning
Co-authored-by: Copilot 175728472+Copilot@users.noreply.github.com
Staging should build staging, duh
Co-authored-by: Copilot 175728472+Copilot@users.noreply.github.com
Remove commented out config
Co-authored-by: Copilot 175728472+Copilot@users.noreply.github.com
expand dev wrangler.jsonc
🏗️ migrate deployment to Cloudflare Workers Builds
Remove GitHub Actions deployment workflow and transition to Cloudflare
Workers Builds for automated deployments. This change centralizes
environment configuration into dedicated wrangler.jsonc and
wrangler.staging.jsonc files, simplifying the CI/CD pipeline and
reducing reliance on external secrets for database IDs. Migration
scripts are updated to reference these config files directly for
better reliability and developer experience. Documentation in
AGENTS.md is updated to reflect the new workflow.
🏗️ migrate deployment pipeline to Cloudflare Workers Builds
Add HUMAN_INTERVENTION_REQUIRED.md for manual setup steps. Update
README.md to reflect the new multi-worker architecture. Introduce
environment-specific wrangler configuration files. Update
worker-configuration.d.ts with the DB binding.
The deployment strategy is shifted from GitHub Actions to Cloudflare
Workers Builds to leverage native platform features and simplify the
pipeline. Splitting staging and production into separate Workers
improves isolation. Environment-specific wrangler configs ensure
correct D1 bindings during migrations and builds.
🔥 Remove HUMAN_INTERVENTION_REQUIRED.md
Remove the manual intervention guide now that the Cloudflare worker
reconfiguration and deployment pipeline setup are complete.
The file was intended as a temporary checklist for manual steps required
to transition to the new deployment workflow. Since these steps are
finished, the documentation is no longer necessary.
🔨 update and reorganize package scripts
Add snapshot deployment commands and update staging deployment logic.
Reorganize database, test, and utility scripts for better readability.
Remove the obsolete deploy:nonprod script.
The scripts are reorganized to improve developer experience and
maintainability. New snapshot deployment commands are added to support
versioned uploads, while the staging deployment is updated to perform
a full deploy. Obsolete scripts are removed to reduce clutter and
related commands are grouped together logically.
📝 Update DaisyUI description in README
Refine the language describing DaisyUI's open-source nature to be clearer
and more professional. Replace the vague phrase "is it" with "is the full
package" to improve the quality and readability of the documentation.
🔧 add Node.js compatibility flags to wrangler configs
Add nodejs_compat and no_nodejs_compat_v2 flags to wrangler.jsonc,
wrangler.dev.jsonc, and wrangler.staging.jsonc.
These flags enable Node.js API support within the Cloudflare Workers
runtime. Including them ensures that the application has access to
necessary Node.js polyfills while explicitly opting out of the v2
compatibility mode to maintain environment stability.
🏷️ Update worker configuration types
Update generated types and add NodeJS.ProcessEnv definitions.
Synchronize types with the latest Wrangler generation and include
NodeJS.ProcessEnv mappings for Cloudflare bindings. This enables
better type safety and autocompletion when using environment
variables in Node.js compatibility mode.