{
  "manifest_version": "1.0.0",
  "template": {
    "id": "c4dccbad-2aca-4569-807d-d9900922e446",
    "slug": "neo4j-graphdb-clone",
    "name": "Neo4j GraphDB (Clone)",
    "description": "Deploy a fully managed Neo4j instance on Railway with ease.",
    "url": "https://railway.com/deploy/neo4j-graphdb-clone",
    "upstream": {
      "repo_url": "https://github.com/sukrutnrvd/neo4j-template"
    }
  },
  "services": [
    {
      "name": "neo4j",
      "source": {
        "repo": "https://github.com/sukrutnrvd/neo4j-template"
      },
      "needs_volume": true,
      "volume_mount_path": "/data",
      "tcp_ports": [
        7687
      ],
      "http": true
    }
  ],
  "required_inputs": [
    {
      "key": "DB_PASSWORD",
      "service": "neo4j",
      "description": "Must be at least 8 characters or it will crash during the deployment phase.",
      "secret": true,
      "strategy": "generate",
      "generate": "strong_password"
    },
    {
      "key": "HEAP_MAX_SIZE",
      "service": "neo4j",
      "description": "Please do not update this value if you on a hobby plan or trial. For more info visit https://neo4j.com/docs/operations-manual/current/configuration/configuration-settings/#config_server.memory.heap.max_size",
      "secret": false,
      "strategy": "default",
      "default": "1g"
    },
    {
      "key": "NEO4J_PLUGINS",
      "service": "neo4j",
      "description": "List of neo4j plugins. Please provide array of strings",
      "secret": false,
      "strategy": "default",
      "default": "[\"apoc\"]"
    },
    {
      "key": "PAGECACHE_SIZE",
      "service": "neo4j",
      "description": "Please do not update this value if you on a hobby plan or trial. For more info visit https://neo4j.com/docs/operations-manual/current/configuration/configuration-settings/#config_server.memory.pagecache.size",
      "secret": false,
      "strategy": "default",
      "default": "4g"
    },
    {
      "key": "HEAP_INITIAL_SIZE",
      "service": "neo4j",
      "description": "Please do not update this value if you on a hobby plan or trial. For more info visit https://neo4j.com/docs/operations-manual/current/configuration/configuration-settings/#config_server.memory.heap.initial_size",
      "secret": false,
      "strategy": "default",
      "default": "1g"
    },
    {
      "key": "RAILWAY_PUBLIC_DOMAIN",
      "service": "neo4j",
      "description": "(Railway's built-in domain reference) on the service. On boot, the entrypoint uses it to set `server.bolt.advertised_address`/`server.http.advertised_address` to `<domain>:443`, so Neo4j Browser's auto-connect resolves to the public gateway instead of the container's internal address.",
      "secret": false,
      "strategy": "railway_provided",
      "railway_source": "railway_domain"
    }
  ],
  "deploy": {
    "mcp": {
      "server": "railway",
      "tool": "deploy_template",
      "args": {
        "template_code": "neo4j-graphdb-clone"
      }
    },
    "cli": "railway deploy --template neo4j-graphdb-clone",
    "api": {
      "method": "POST",
      "path": "/graphql/v2",
      "body": {
        "query": "mutation templateDeploy($input: TemplateDeployV2Input!) { templateDeployV2(input: $input) { projectId workflowId } }",
        "variables": {
          "input": {
            "templateId": "c4dccbad-2aca-4569-807d-d9900922e446",
            "serializedConfig": {
              "services": {
                "0ea4d192-1f09-45ad-9d22-1170573f8f9c": {
                  "name": "neo4j",
                  "source": {
                    "repo": "sukrutnrvd/neo4j-template",
                    "branch": "feat",
                    "rootDirectory": null
                  },
                  "variables": {
                    "DB_PASSWORD": {
                      "isOptional": false,
                      "description": "Must be at least 8 characters or it will crash during the deployment phase.",
                      "defaultValue": "{{DB_PASSWORD}}"
                    },
                    "HEAP_MAX_SIZE": {
                      "isOptional": false,
                      "description": "Please do not update this value if you on a hobby plan or trial. For more info visit https://neo4j.com/docs/operations-manual/current/configuration/configuration-settings/#config_server.memory.heap.max_size",
                      "defaultValue": "1g"
                    },
                    "NEO4J_PLUGINS": {
                      "isOptional": false,
                      "description": "List of neo4j plugins. Please provide array of strings",
                      "defaultValue": "[\"apoc\"]"
                    },
                    "NODE_CSV_URLS": {
                      "isOptional": true,
                      "description": "Bulk insert only supported for csv files for now. You can provide your csv files by seperating them with comma.",
                      "defaultValue": ""
                    },
                    "PAGECACHE_SIZE": {
                      "isOptional": false,
                      "description": "Please do not update this value if you on a hobby plan or trial. For more info visit https://neo4j.com/docs/operations-manual/current/configuration/configuration-settings/#config_server.memory.pagecache.size",
                      "defaultValue": "4g"
                    },
                    "HEAP_INITIAL_SIZE": {
                      "isOptional": false,
                      "description": "Please do not update this value if you on a hobby plan or trial. For more info visit https://neo4j.com/docs/operations-manual/current/configuration/configuration-settings/#config_server.memory.heap.initial_size",
                      "defaultValue": "1g"
                    },
                    "RELATION_CSV_URLS": {
                      "isOptional": true,
                      "description": "Bulk insert only supported for csv files for now. You can provide your csv files by seperating them with comma.",
                      "defaultValue": ""
                    },
                    "RAILWAY_PUBLIC_DOMAIN": {
                      "description": "(Railway's built-in domain reference) on the service. On boot, the entrypoint uses it to set `server.bolt.advertised_address`/`server.http.advertised_address` to `<domain>:443`, so Neo4j Browser's auto-connect resolves to the public gateway instead of the container's internal address.",
                      "defaultValue": "${{RAILWAY_PUBLIC_DOMAIN}}"
                    }
                  },
                  "networking": {
                    "tcpProxies": {
                      "7687": {}
                    },
                    "serviceDomains": {
                      "<hasDomain>:8080": {
                        "port": 8080
                      }
                    }
                  },
                  "volumeMounts": {
                    "0ea4d192-1f09-45ad-9d22-1170573f8f9c": {
                      "mountPath": "/data"
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "post_deploy": {},
  "resources": {
    "expected_services": 1,
    "needs_volume": true
  },
  "generated_at": "2026-09-24T16:15:00.515Z",
  "generator_version": "0.1.0",
  "status": "degraded",
  "validated_at": "2026-09-24T13:57:54.007Z",
  "success_rate_30d": 0,
  "validation": {
    "last_run_id": "run_b3cfa66825df466ebb8a",
    "checks": [
      {
        "name": "workflow_completed",
        "passed": false,
        "detail": "Branch 'feat' not found in sukrutnrvd/neo4j-template"
      }
    ]
  }
}
