Skip to content

abpv new ​

bash
abpv new Acme.BookStore
abpv new Acme.BookStore -d mongodb --separate-auth-server
abpv new Acme.BookStore --sample-crud
abpv new Acme.BookStore --no-backend --backend https://localhost:44305

The backend is generated by the official abp CLI with -u no-ui -uost and -o Acme.BookStore/aspnet-core. The frontend is written to Acme.BookStore/vue, matching the standard backend/frontend directory layout.

-o / --output-folder selects the whole project directory; the backend goes into its aspnet-core/ subdirectory. Both separate values and --output-folder=<path> work. -csf / --create-solution-folder is consumed to avoid another nested solution folder. Other ABP options are passed through as typed.

Options of its own ​

--port <n>The frontend's port; everything that has to agree with it is written
--dir <path>Frontend subdirectory relative to the project root; vue by default
-o / --output-folder <path>The whole project output directory; the solution name by default
--modules <list>Which module UIs to wire up; all of them by default
--sample-crudABP's Books sample, backend and page
--with-source-code <list>Release those packages' source into the project from the start
--no-backendOnly the frontend
--backend <url>The backend it should point at, with --no-backend
--template <dir>Render from this directory instead of the built-in template
--dry-runSay what it would write and write nothing

The frontend directory must stay inside the project and separate from aspnet-core/. An existing backend or frontend is not overwritten. --no-backend writes the frontend directly into the project output directory.

What it writes on the backend ​

Three values, without which nothing can sign in:

The OpenIddict client's RootUrlWhat the seeder builds the redirect URIs from
CorsOriginsOn every host that answers the frontend
RedirectAllowedUrlsWhere the identity server may send the visitor back

A solution generated with -u no-ui has none of them.

Backend generation ​

The command inspects the solution actually written to disk before adding the frontend. Follow Quick Start for backend library installation, database seeding and startup.

Additional generation options ​

--package-manager <pnpm|npm|yarn> selects the installer (default pnpm). --skip-install skips installation; --skip-proxy skips proxy generation. The default frontend port is 4200. --backend can override the detected backend address.

Choose the solution shape ​

GoalCommand choice
New backend plus Vue appnew with the default backend generation
Optional Books teaching sampleAdd --sample-crud
Vue-only application for a running backend--no-backend --backend URL
Add Vue beside an existing backend/UIswitch-ui rather than a second new backend

A standard new solution contains aspnet-core/ and vue/ side by side. The sample is optional; without sample-crud the template does not add a Books business page. Use --port when initially selecting a frontend address so seeded callbacks and generated configuration agree.

Before and after generation ​

Install the required .NET SDK, official ABP CLI and the frontend package manager before invoking backend generation. new delegates backend template options to the official CLI, so database/provider/template choices must be supported by that installed tool.

After generation, install backend web libraries, run DbMigrator from its project directory, start the host/auth server and start the frontend. Create a solution gives the exact project layout and commands. A generated frontend does not mean the database has been seeded.

If generation fails, read which phase failed before retrying: official backend creation, solution discovery/configuration, frontend rendering, dependency installation or proxy retrieval. Existing output is protected from overwrite; inspect it and intentionally choose a new destination or correct the failed phase rather than repeatedly writing into a partially created directory.

Unofficial community project. MIT licensed. Not affiliated with Volosoft.