Amplication Blueprints let you define more than just a resource’s base configuration. By adding properties and establishing relationships between different Blueprints, you can enforce architectural standards and create dynamic, interconnected software systems.

This approach lets organizations ensure that all resources, whether services, infrastructure definitions, or apps, conform to a unified architectural blueprint.

Why Properties & Relations Matter

  • Enforce Standard Fields
    Codify mandatory fields like compliance flags, observability settings, or region configurations so they’re automatically included in every new resource.

  • Create Meaningful Connections
    Model interdependencies across microservices, databases, and infrastructure components. This helps your team understand and navigate a complex ecosystem with clarity and can be used to generate context-aware code and keep consistent settings across services.

  • Propagate Updates & Governance
    Changing a property in a blueprint automatically notifies or updates the dependent resources, keeping everything in sync.

Blueprint Properties

Properties are customizable fields or attributes that every instance of a Blueprint has access to. They let you capture metadata and configurations that need to remain uniform across your organization.

Define Your Property Structure

Specify the name, type, and possible default values for each property. Examples: environmentType (Production, Staging), region (us-east, eu-west).

Set Default Values

Predefine standard defaults. For instance, you might enforce a default region or logging format to ensure uniformity across all services.

Attach Properties to Your Blueprint

Once configured, these properties automatically appear whenever a resource is instantiated from the Blueprint.

Properties can be as granular or as broad as needed. You might include security flags, database connection parameters, or even labeling conventions like naming prefixes to maintain consistency.

Blueprint Relations

Relations define how two or more Blueprints link to each other. These relationships inform code generation via plugins so your team automatically get resource configurations that reflect real dependencies. For example:

Microservice ↔ Database

Ensure each microservice references the correct DB configuration by linking “Service Blueprints” to “PostgreSQL” or “MongoDB” Blueprints.

Infrastructure ↔ Application

Connect Terraform or Helm configuration Blueprints to your microservice Blueprints, aligning deployment processes with each service.

Let’s explore how relations work in the Blueprint system.

If your architecture includes multiple layers, like an Angular front-end Blueprint, a Java back-end Blueprint, and a MongoDB database Blueprint, Amplication can chain these relationships to ensure consistent references at every layer.

Example Use Cases

Security & Compliance by Default

Enforce compliance attributes (e.g., encryption modes, data residency) as required properties. Any new resource inherits these automatically.

Auto-Connect Frontend & Backend

By relating your React Front-End Blueprint to a Node.js Service Blueprint, you can pre-generate API endpoints, environment variables, or stubs that make integration more efficient.

Streamlined Infrastructure Setup

Use properties to specify environment (dev, staging, production) and link your Terraform or Helm Blueprints to relevant microservice resources. Developers don’t have to guess the correct infrastructure or configuration because it’s baked in.

Next Steps

Now that you understand how to configure Properties and establish Relations in Blueprints, you’re ready to create a more robust, standardized environment for your organization.

With Blueprint Properties & Relations, your resources become first-class citizens of a unified, well-governed architecture. This ensures consistency, reduces repeated work, and gives you the centralized oversight needed to scale confidently.