Uh oh!
There was an error while loading. Please reload this page.
fix(build): add root package.json so bench builds the SPA - #2
Merged
Conversation
`bench build --app wikify` silently skipped the frontend: frappe's esbuild runner looks for `apps/<app>/package.json` and `continue`s when it is absent (frappe/esbuild/esbuild.js:611-620), so no bundle and no `www/wikify.html` were ever emitted on a fresh `bench get-app`. Add the root package.json with the standard Frappe SPA scripts, matching frappe/crm. `postinstall` also keeps frontend deps in sync — without it a stale `frontend/node_modules` silently builds against the wrong frappe-ui. Also ignore `wikify/public/node_modules`: `bench build` symlinks it, and git sees a symlink rather than a directory, so the existing `node_modules/` rule never matched it. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Greptile SummaryAdds the root package metadata needed for Frappe Bench to discover and build the SPA, while declaring Wiki as a required app.
Confidence Score: 5/5The PR appears safe to merge because no blocking failure remains. No blocking failure remains.
|
| Filename | Overview |
|---|---|
| package.json | Adds the root package metadata and scripts that make Wikify eligible for Frappe's application build. |
| wikify/hooks.py | Declares the Wiki application as a required dependency. |
| .github/workflows/ci.yml | Fetches and installs Wiki before installing Wikify and building assets. |
| .gitignore | Excludes the dependency symlink generated under the application's public directory. |
| .pre-commit-config.yaml | Expands the global hook exclusions to omit POC and scratch trees. |
| yarn.lock | Adds the root Yarn v1 lockfile associated with the dependency-free root package. |
Reviews (2): Last reviewed commit: "ci: install wiki app and take pocs/scrat..." | Re-trigger Greptile
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Rl0007
commented
Aug 11, 2026
ContributorAuthor
@NagariaHussain shall I merge it? |
Uh oh!
There was an error while loading. Please reload this page.
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 freeto 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.
Problem
On a fresh
bench get-app+bench build --app wikify, no frontend assets were produced. The build reported success in ~300ms and emitted nothing — no bundle, and nowikify/www/wikify.html, so/wikifyreturned Page not found.Cause: frappe's esbuild runner looks for
apps/<app>/package.jsonand silentlycontinues when it's missing —frappe/esbuild/esbuild.js:611-620:frontend/package.jsonexists, but the root one never did — so the app was never a build candidate.Fix
package.jsonwith the standard Frappe SPA scripts, matchingfrappe/crm.postinstallcascades intofrontend/, which also keeps frontend deps in sync. Worth calling out: without it, a stalefrontend/node_modulessilently builds against the wrong frappe-ui — on this branch that surfaced as 12MISSING_EXPORTerrors (BottomSheet, etc.) because beta.18 was installed whilefrontend/package.jsonhad moved to beta.24 in 16f5f55.wikify/public/node_modules.bench buildsymlinks it, and git sees a symlink rather than a directory, so the existingnode_modules/rule never matched it and it showed up as untracked.yarn.lockis the trivial autogenerated root lockfile (2 comment lines), same as crm's.Verification
Reproduced and fixed against
wikify.localhost, each run from a clearedwikify/public/frontend+wikify/www/wikify.html:bench build --app wikifywww/wikify.htmlpackage.jsonTotal Build Time: 315ms— no build command runpackage.json✔ wikify built in 14.9s/wikifyrenders correctly after the fix (Projects list, sidebar, styling all intact).pre-commitpasses on the changed files.