base44 create
Creates a new Base44 project from a template. This command is framework-agnostic and can either scaffold a complete project or add Base44 configuration to an existing project.Critical: Non-Interactive Mode Required
ALWAYS provide both the project name AND--path flag. Without both, the command opens an interactive TUI which agents cannot use properly.
WRONG: npx base44 create
WRONG: npx base44 create my-app
RIGHT: npx base44 create my-app -p ./my-app
Syntax
Arguments & Options
*Required for non-interactive mode. Both
name and --path must be provided together.
Template Selection (CRITICAL - Choose Appropriately)
You MUST select the most appropriate template based on user requirements:
Default Choice: When the user asks to “create an app” or “build a project” without specifying a particular framework, use
backend-and-client to provide a complete, production-ready application with Vite + React + Tailwind.
The --path Flag
- For
backend-and-clienttemplate (new projects): Use a new subfolder path - For
backend-onlytemplate (existing projects): Use-p .in the current directory
Workflow: Using backend-only with External Frameworks
CRITICAL: The project folder MUST exist BEFORE running base44 create with backend-only
The backend-only template only adds Base44 configuration files - it does NOT create a frontend. If you need a frontend with a specific framework:
- Create an empty folder manually, then try to run
npx create viteinside it (will fail - folder exists) - Run
base44 createwithbackend-onlyexpecting it to create a frontend (it won’t)
- Run the external framework’s init command FIRST (it creates its own folder)
- Then run
base44 createinside that folder with-p .
Examples
Workspaces
By default the app is created in your personal workspace. Use-w, --workspace <id> to create it in a different workspace (organization) instead — find workspace IDs with npx base44 workspace list (see workspace-list.md). In interactive mode, if you belong to more than one workspace and don’t pass --workspace, the CLI prompts you to pick one.
What It Does
- Applies the selected template to the target path
- Creates a
base44/folder with configuration files - Registers the project with Base44 backend
- Creates
base44/.app.jsoncwith the app ID - If
--deployis used:- Pushes any entities defined in
base44/entities/ - Runs install and build commands (for templates with frontend)
- Deploys the site to Base44 hosting
- Pushes any entities defined in