You’re free to copy and use any code from our Community API Modules — they are designed to be a foundation you can build on.

To simplify setup and integration, we created a CLI tool to help you start new projects. It handles imports, configurations, and dependencies automatically, so you can get up and running in seconds.

Start a New Project

Use the init command to create a new Node.js project or configure an existing one. Add the -c flag to specify a custom folder, or the CLI will set up the project in the current directory:

npx vratix init

Configure Your Project

The CLI will prompt you with a few questions to configure your project and create ./config/modules.json:

Select your package manager: › pnpm
What database are you going to use: › PostgreSQL
Select your schema validator: › zod
Should we set up Docker containers for this service (docker-compose.yaml): › no / yes 
Should we configure a web proxy for this project (NGINX): › no / yes

Choose API Modules

During setup, select any initial API Modules you’d like to install as part of the project template:

☐ Auth (Basic)
☐ Stripe Subscriptions
☐ S3 File Upload
...
☐ None

If you choose "None," you can add modules individually after setup.

Set Folder Overrides

Customize the paths for main module folders if needed:

@components -> /src/components
@routes -> /src/routes
@middleware -> /src/middleware
@utils -> /src/utils

Note: Any folder overrides will still be located within /src.

Ready To Go

Once setup is complete, to start your service run:

npm run dev

To add additional modules later, use:

npx vratix add <module>