@vyriy/create
Project generator and preset engine for Vyriy workspaces.
Purpose
Use this package when a Vyriy project needs a small focused module for create behavior.
Vyriy packages are intentionally small. The goal is to keep the public API explicit, easy to test, and easy to compose with the rest of the Vyriy ecosystem.
Install
With npm:
npm install -D @vyriy/create
With Yarn:
yarn add -D @vyriy/create
Usage
npm create vyriy@latest
# or
yarn create vyriy
import { createProject } from '@vyriy/create';
await createProject({
name: 'my-app',
targetDir: './my-app',
preset: 'ssg',
});
Public API
The package is expected to expose the following main surface:
createProjectcreatePlanrunCreatepreset registryprompt helpers
Parameters and options
name— Generated project name.targetDir— Directory where files are written.scope— Optional npm scope for generated package names.preset— Project preset such as base, library, api, ssr, ssg, spa, rest, gql, mfe, fullstack.ci— CI provider option. GitLab/GitHub/none depending on preset support.dryRun— When enabled, prints the plan without writing files.
Examples
Minimal usage
import * as module from '@vyriy/create';
console.info(module);
Use inside a Vyriy package
// packages/example/index.ts
export { default as example } from '@vyriy/create';
Keep the boundary explicit
// Prefer importing from the package root unless a documented subpath is required.
import {} from /* named export */ '@vyriy/create';
Notes
- Keep configuration close to the package that owns it.
- Prefer explicit options over hidden global state.
- Keep examples small enough to copy into tests or Storybook docs.
- When adding a new public export, document it in this README and add a focused test.
Related packages
@vyriy/configfor environment-driven options.@vyriy/scriptfor readable operational flows.@vyriy/handlerand@vyriy/serverwhen the package participates in runtime handling.