Skip to content

feat(cli): add app visibility command and config setting#550

Open
moranshe-max wants to merge 1 commit into
mainfrom
destiny-orangutan
Open

feat(cli): add app visibility command and config setting#550
moranshe-max wants to merge 1 commit into
mainfrom
destiny-orangutan

Conversation

@moranshe-max

@moranshe-max moranshe-max commented Jun 22, 2026

Copy link
Copy Markdown
Collaborator

Note

Description

Adds app visibility support to the Base44 CLI. A new base44 visibility <public|private|workspace> command sets an app's visibility directly on the server, and visibility can also be declared via "visibility" in config.jsonc so that base44 deploy applies it as part of a unified deploy. New projects now scaffold "visibility": "public" by default. Also refines ApiError hint behavior so non-connectivity 4xx errors (e.g. plan-gated 402s) no longer show a misleading network troubleshooting hint.

Related Issue

None

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update
  • Refactoring (no functional changes)
  • Other (please describe):

Changes Made

  • Add base44 visibility <level> command (public | private | workspace) that sets visibility on the server, supporting both linked projects and projectless use via --app-id.
  • Add setAppVisibility() in core/project/api.ts, mapping CLI levels to backend public_settings values (public_without_login, private_with_login, workspace_with_login); no-ops when visibility is unset.
  • Add optional visibility field to ProjectConfigSchema and a shared VISIBILITY_LEVELS / Visibility type.
  • Wire visibility into the unified deploy flow (deployAll, hasResourcesToDeploy) and surface it in the deploy summary.
  • Scaffold "visibility": "public" in the backend-only and backend-and-client config templates.
  • Refine ApiError.hints: suppress the "check your network connection" hint for non-5xx HTTP errors so server-side messages (e.g. plan-gating 402) aren't muddied.
  • Update the changelog with an [Unreleased] entry.

Testing

  • I have tested these changes locally
  • I have added/updated tests as needed
  • All tests pass (npm test)

Checklist

  • My code follows the project's style guidelines
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation (if applicable)
  • My changes generate no new warnings
  • I have updated docs/ (AGENTS.md) if I made architectural changes

Additional Notes

New tests cover the visibility command (linked, projectless via --app-id, invalid/missing args, help), deploy applying visibility from config, and the updated ApiError hint behavior. A with-visibility test fixture was added.


🤖 Generated by Claude | 2026-06-23 11:14 UTC | 763501e

@github-actions

github-actions Bot commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

🚀 Package Preview Available!


Install this PR's preview build with npm:

npm i @base44-preview/cli@0.0.56-pr.550.763501e

Prefer not to change any import paths? Install using npm alias so your code still imports base44:

npm i "base44@npm:@base44-preview/cli@0.0.56-pr.550.763501e"

Or add it to your package.json dependencies:

{
  "dependencies": {
    "base44": "npm:@base44-preview/cli@0.0.56-pr.550.763501e"
  }
}

Preview published to npm registry — try new features instantly!

Adds app visibility (public | private | workspace) two ways:
- `base44 visibility <level>` sets it on the server via PUT /api/apps/{id};
  resolves the app from --app-id / BASE44_APP_ID / .app.jsonc, so it works
  projectless across any app.
- a `visibility` field in config.jsonc that `base44 deploy` applies. New
  projects scaffold "visibility": "public".

Also stop showing the "check your network connection" hint for 4xx API errors
that already carry a server message; reserve it for connection failures and 5xx.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@moranshe-max moranshe-max marked this pull request as ready for review June 23, 2026 11:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant