A CLI tool for rapidly scaffolding a new Deenruv server application with a React admin panel. Heavily inspired by [create-react-app](https://github.com/facebook/create-react-app).
A CLI tool for rapidly scaffolding a new Deenruv server application with a React admin panel. Heavily inspired by create-react-app.
The generated project uses PostgreSQL as its database and ships with:
- A server application (NestJS + GraphQL)
- A React admin panel (Vite + React) powered by @deenruv/admin-dashboard
Deenruv Create requires Node.js v18+ to be installed and a running PostgreSQL instance.
To create a new project, you may choose one of the following methods:
``sh`
npx @deenruv/create my-app
_npx comes with npm 5.2+ and higher._
`sh`
npm init @deenruv my-app
_npm init is available in npm 6+_
`sh`
yarn create @deenruv my-app
_yarn create is available in Yarn 0.25+_
It will create a directory called my-app inside the current folder containing:src/
- Server source code in admin/
- React admin panel in
``
my-app/
├── src/ # Server source (NestJS + GraphQL)
│ ├── index.ts # Server entry point
│ ├── index-worker.ts # Worker entry point
│ ├── deenruv-config.ts # Server configuration
│ └── plugins/ # Custom plugins directory
├── admin/ # React admin panel (Vite + React)
│ ├── src/
│ │ ├── main.tsx # React entry point
│ │ └── App.tsx # Main App component
│ ├── index.html
│ ├── vite.config.ts
│ └── package.json
├── static/ # Static assets and email templates
├── package.json
├── .env
├── Dockerfile
├── docker-compose.yml
└── README.md
After creating your project:
`sh`
cd my-app
npm run dev # Starts server, worker, and admin panel concurrently
- Admin API: http://localhost:3000/admin-api
- Shop API: http://localhost:3000/shop-api
- Admin UI: http://localhost:3001/admin-ui
By default, Deenruv Create will detect whether a compatible version of Yarn is installed, and if so will display a prompt to select the preferred package manager.
You can override this and force it to use npm with the --use-npm flag.
You can control how much output is generated during the installation and setup with this flag. Valid options are silent, info and verbose. The default is silent
Example:
`sh``
npx @deenruv/create my-app --log-level verbose