refactor(studio): split API and web workspaces#5120
Merged
Conversation
tlgimenes
force-pushed
the
codex/origin-main
branch
8 times, most recently
from
July 24, 2026 12:17
791276d to
02cdd8b
Compare
tlgimenes
enabled auto-merge (squash)
July 24, 2026 12:19
tlgimenes
force-pushed
the
codex/origin-main
branch
from
July 24, 2026 12:52
02cdd8b to
6dfb733
Compare
guitavano
added a commit
that referenced
this pull request
Jul 24, 2026
Resolve conflicts from #5120 (split apps/mesh → apps/api + apps/web), which moved apps/mesh/src/web/* to apps/web/src/* and changed the path alias from `@/web/*` to `@/*`: - array-field.tsx / tile-board.tsx: import-block conflicts — keep the new `@/i18n/use-t.ts` alias plus our createPortal / SORTABLE_DROP_ANIMATION imports. - Move new file to apps/web/src/lib/dnd-drop-animation.ts and update all five importers from `@/web/lib/...` to `@/lib/...`. tsc (apps/web) and biome format clean. Co-Authored-By: Claude Opus 4.8 <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
apps/meshworkspace into the Hono backend atapps/apiand the Vite/React application atapps/web@decocms/sharedpackage while keeping browser-only SDK code insideapps/webcheck:readmesArchitectural boundaries
apps/webdoes not import server implementation fromapps/apiapps/apidoes not import application code fromapps/web@decocms/sharedremains private, isomorphic, and free of application/runtime ownershipapps/web/src/sdkValidation
bun run checkbun run fmt:checkbun run lintbun run knipbun run --cwd=apps/docs build(322 pages)bun run --cwd=packages/harness test(363 tests)Full Playwright E2E was not rerun because it requires the external Postgres, NATS, and browser service stack.
Summary by cubic
Split the former full‑stack
apps/meshintoapps/api(Hono backend/CLI) andapps/web(Vite/React), introduced a private@decocms/sharedpackage for isomorphic contracts and utils, and overhauled CI/release/tests/docs to enforce the new boundaries. One build (bun run build:studio) now stages the web bundle into the API dist; the release publishesdecocmsto npm and pushes separate API and web images from the same tarball.Refactors
apps/apiand web UI toapps/web; enforced boundaries withban-cross-tree-importsandban-web-server-imports.packages/sharedwith imports via@decocms/shared/*; removed publish workflows for@decocms/mesh-sdkand@decocms/std.build:studioproduces one tarball used to publish npm (decocmsfromapps/api) and build/push GHCR images for API (apps/api/Dockerfile) and web (apps/web/Dockerfile); release notes/docs referencebunx decocms.apps/api/**andapps/web/**; release‑tagging watchesapps/api/package.json, rootpackage.json, andscripts/build-studio.ts, and computes deploy scope (web/server/both) from changed files.bun run test; the Playwright E2E suite lives inpackages/e2eand its config startsapps/apiandapps/webas separatewebServerentries; multi‑pod, storage‑integration, resilience, and sandbox workflows follow the new layout.apps/api/README.md; refreshedREADME.md,AGENTS.md,TESTING.md,CONTRIBUTING.md. Worktrees/hooks now copy.env,auth-config.json, andconfig.jsonunderapps/api..gitignoreand Playwright artifact paths point toapps/web.Migration
bun run --cwd=apps/web dev(web) andbun run --cwd=apps/api dev:server(API). Build both withbun run build:studio. Run DB migrations withbun run --cwd=apps/api migrate..env,auth-config.json, andconfig.jsonlive underapps/api/.@decocms/stdand app‑local SDK paths with@decocms/shared/*(e.g.@decocms/shared/std).packages/e2e; config starts API and web separately.apps/api/Dockerfile; web image fromapps/web/Dockerfile. The container’s SQLite path stays/app/data/mesh.dbfor seamless upgrades.Written for commit 6dfb733. Summary will update on new commits.