Templates

Deploy an application from a template

You need project.create permission to create a project. For private templates, you must also be able to read the template in the same organization. Authenticated members can browse public templates, but deployment is still subject to project-creation permission in the active organization. Creating a database together with the application also requires database.create.

Step 1: choose the template

  1. Open Templates from the console menu.
  2. Browse Organization templates or Public templates.
  3. Use Newest to find recent publications, Most used to find popular starting points, or Official to browse Templates from Zenifra and official partners.
  4. Open a card to review the author, tags, revision, application, port, persistence, variables, and defaults.

The Official Template badge identifies the publisher's origin, not a guarantee for every use case. Read the description, check the variables, and confirm that the suggested plan matches your application.

Choose between Deploy and Customize

The template details page offers two paths:

  • Deploy creates the project with all template recommendations. Before creation, a confirmation shows the automatic name and a summary of plan, billing, access, instances, persistence, and auto-scaling.
  • Customize opens project creation with the recommendations already filled in. You can review and change the available choices before creating the project.

Quick deployment builds the project name from the template name plus a random eight-character suffix. For example, web-dashboard-a1b2c3d4. This avoids naming conflicts without asking you to choose a name first.

Deploy with the recommendations

Select Deploy when you want to start with the author's recommended settings. Review the summary and select Confirm deployment. Canceling closes the confirmation without creating a project.

This is the simplest way to get applications such as n8n, Metabase, WordPress, and other catalog options running. After confirmation, Zenifra creates the project with the recommended plan, billing, access, instances, persistence, capacity, and auto-scaling. The application, port, and persistent path also follow the selected template revision.

When the Template already contains all required information, the result is a ready and functional application with one click, without configuring each option manually.

Some templates request required information that cannot be filled in ahead of time, such as a secret. In that case, quick deployment is unavailable and the console directs you to Customize.

Create a database with the application

When a template declares a database dependency, the details page explains that the application can use a database and offers Create database with project. It is optional and starts unselected. Select it to create both resources in one operation.

The author's recommended engine and configuration are selected first. You can choose only an engine declared as compatible by the template. Plans, versions, billing modes, capacity, and other available settings come from the current catalog. Review the summary of both resources and their costs before confirming.

Variables that the author bound to connection details are filled automatically. They are read-only in the deployment form; sensitive values remain masked and are never returned in the deployment result. Any variables not bound by the author still need the values required by the application.

If you do not have database.create, the database option is unavailable and you can continue only with the application's manual connection variables. An application and a database created together remain independent after success. Deleting one does not delete the other, and changing the database password requires updating the application variable yourself.

Customize before creating

Select Customize to open a creation page with the recommended values filled in. You can change:

  • name and description;
  • plan and billing mode;
  • public or private access;
  • initial instance count;
  • auto-scaling, when available;
  • persistence and data capacity;
  • values for the variables declared by the template.

The template keeps the application, port, HTTP type, persistent path, and expected variable set fixed. The form accepts exactly those variables. Required variables need a value. Secrets start empty, remain only while you fill out the form, and are not displayed in the catalog.

For example, use Customize when you want to choose a different plan, adjust capacity, or provide a credential required by the application. Recommendations remain filled in so you only need to change what matters.

After creation

When customizing, review billing and capacity before selecting Create project. If either creation path fails, the template does not gain a new usage and the ranking does not change.

When creation finishes, you are taken to the project page. The project records the template and revision used as provenance. This explains where the starting point came from but does not create automatic updates: future template changes do not alter this project.

When a deployment can be rejected

The console can block the action when:

  • the template was removed or is no longer available;
  • the active organization cannot access the private template;
  • the selected revision is outdated;
  • project.create is missing;
  • database.create is missing for a deployment that creates a database;
  • the selected database engine or configuration is not compatible with the template;
  • quick deployment needs a required variable without a recommended value;
  • during customization, a required variable was not provided;
  • an undeclared variable was sent;
  • the selected plan or capacity is incompatible.

Return to the template details to load the current revision and try again. Do not repeat secret values in URLs, descriptions, or support requests.

Next steps