Skip to content

feat: add electric-sql blueprint template#754

Open
ahmed-lotfy-dev wants to merge 1 commit intoDokploy:canaryfrom
ahmed-lotfy-dev:feat/add-electric-sql-template
Open

feat: add electric-sql blueprint template#754
ahmed-lotfy-dev wants to merge 1 commit intoDokploy:canaryfrom
ahmed-lotfy-dev:feat/add-electric-sql-template

Conversation

@ahmed-lotfy-dev
Copy link
Copy Markdown

@ahmed-lotfy-dev ahmed-lotfy-dev commented Mar 26, 2026

What is this PR about?

New PR of [ElectricSQL]

Adds a high-performance, open-source sync engine (ElectricSQL) allowing users to bypass cloud quotas and host their own real-time local-first PostgreSQL synchronization.

Template features:

  • Includes template.toml structured variables with autocomplete UI.
  • Conforms to Dokploy's container_name and docker-compose.yml guidelines.
  • Uses dynamic password helpers for ELECTRIC_SECRET.

Checklist

Before submitting this PR, please make sure that:

Issues related (if applicable)

N/A

Screenshots or Videos

(You can drag and drop a screenshot of the ElectricSQL dashboard here later if Dokploy asks for one, but it's optional!)

Greptile Summary

This PR adds an ElectricSQL blueprint template to the Dokploy template collection, providing a self-hosted sync engine for PostgreSQL. The overall structure is reasonable, but there are several blocking issues that need to be resolved before merging.\n\nKey issues found:\n\n- Broken logo file (blueprints/electric-sql/logo.svg): The file contains the literal text 404: Not Found rather than valid SVG content. The logo was never successfully sourced and must be replaced with the actual ElectricSQL SVG logo.\n- Accidental Strapi deletion (meta.json): The existing strapi template entry has been inadvertently removed. This is an unrelated change that will break the Strapi template for all users — it must be restored.\n- Unpinned Docker image tag: electricsql/electric:latest should be pinned to the specific version referenced in meta.json (1.4.15) to ensure reproducibility and prevent supply chain risk (per AGENTS.md).\n- Service name mismatch: The service is named electric in docker-compose.yml and template.toml, but AGENTS.md requires the service name to match the blueprint folder name exactly (electric-sql).

Confidence Score: 1/5

Not safe to merge — contains a broken logo file, an accidental deletion of an unrelated template (Strapi), and a non-compliant unpinned image tag.

Three separate blocking issues exist: a completely invalid logo asset, an unintended removal of the Strapi entry from meta.json (which would break an existing live template), and an unpinned Docker image tag against explicit project policy. These must all be fixed before the PR can be merged safely.

All four changed files require attention: logo.svg (broken content), docker-compose.yml (unpinned image, wrong service name), template.toml (service name mismatch), and meta.json (accidental Strapi deletion).

Important Files Changed

Filename Overview
blueprints/electric-sql/logo.svg File contains literal '404: Not Found' text instead of valid SVG content — the logo was never successfully sourced.
blueprints/electric-sql/docker-compose.yml Service name 'electric' does not match blueprint folder 'electric-sql' (violates AGENTS.md naming rule), and image uses unpinned 'latest' tag instead of the specific version referenced in meta.json.
blueprints/electric-sql/template.toml Variable definitions and domain config look reasonable; serviceName should be updated to 'electric-sql' to match the folder name once docker-compose.yml is fixed.
meta.json Adds the electric-sql entry correctly, but accidentally removes the unrelated Strapi template entry — a significant unintended deletion.

Comments Outside Diff (1)

  1. meta.json, line 5970-5987 (link)

    P0 Strapi entry accidentally deleted

    This PR removes the existing strapi entry from meta.json, which is completely unrelated to adding ElectricSQL. Strapi is an established template in the repository and should not be removed. This looks like an unintentional edit — perhaps a copy/paste or merge conflict that deleted this block.

    The Strapi entry (with id: "strapi", name: "Strapi", etc.) needs to be restored.

Reviews (1): Last reviewed commit: "feat: add electric-sql blueprint templat..." | Re-trigger Greptile

Greptile also left 3 inline comments on this PR.

(2/5) Greptile learns from your feedback when you react with thumbs up/down!

Context used:

  • Context used - AGENTS.md (source)

@dosubot dosubot bot added the size:M This PR changes 30-99 lines, ignoring generated files. label Mar 26, 2026
@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 26, 2026

built with Refined Cloudflare Pages Action

⚡ Cloudflare Pages Deployment

Name Status Preview Last Commit
templates ✅ Ready (View Log) Visit Preview 8dedee8

@@ -0,0 +1 @@
404: Not Found No newline at end of file
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P0 Invalid SVG — file contains HTTP error text

The logo.svg file contains the literal string 404: Not Found instead of valid SVG content. This means the logo was never successfully fetched or added, and it will break the template's logo display in Dokploy's UI.

The file needs to be replaced with the actual ElectricSQL SVG logo (e.g., from the electric-sql/electric GitHub repo or the ElectricSQL website).


services:
electric:
image: electricsql/electric:latest
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Unpinned latest image tag — security and stability risk

Per the project's AGENTS.md contributing guidelines: "Pin Docker images to specific versions to avoid supply chain attacks" and "Version: MUST match Docker image version in docker-compose.yml."

Using latest means deployments are non-reproducible and vulnerable to supply chain attacks via a compromised new image version. The meta.json entry already references version 1.4.15, so the image tag should be pinned to match.

Suggested change
image: electricsql/electric:latest
image: electricsql/electric:1.4.15

version: '3.8'

services:
electric:
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Service name must match blueprint folder name

Per AGENTS.md: "Docker services: MUST match blueprint folder name exactly (e.g., ghost service in blueprints/ghost/)."

The blueprint folder is electric-sql, but the service is named electric. The service name (and the serviceName field in template.toml) should both be electric-sql.

Suggested change
electric:
electric-sql:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

new-template size:M This PR changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant