Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

feat: add sync pull/diff/push commands for infrastructure-as-code workflow

Open
#22 0 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
20/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Stale
Tech stack
typescript

Research direction

Start with the working implementation in PR #21 and compare it with the issue's v1 scope. Review the sync pull, sync diff, and sync push entry points, including their flags and tRPC update endpoints. Done means existing projects, environments, applications, compose, databases, and listed sub-resources support the specified pull, diff, and push behavior without create or delete operations.

Written by the indexing model from the issue text.

Description

Problem

Dokploy currently has no infrastructure-as-code story. There's no way to:

  • Snapshot server state to version-controlled files
  • Track configuration drift between environments
  • Apply changes from local files back to the server

Proposed Solution

Add three new commands under dokploy sync:

  • sync pull - Serialize full Dokploy state (projects, environments, apps, compose, databases) to local YAML files
  • sync diff - Compare local YAML state against the live server with colored field-level output
  • sync push - Apply local changes back via tRPC update endpoints
Flags
  • --project / -p - Filter by project name or ID
  • --redact / -r - Mask sensitive fields (passwords, env vars, tokens)
  • --dry-run / -d - Preview changes without applying
  • --yes / -y - Skip confirmation prompt
v1 Scope
  • Pull/diff/push for projects, environments, applications, compose, all 5 DB types
  • Sub-resources: domains, ports, mounts, redirects, security
  • Update existing resources only (no create/delete on push)
Deferred to v2
  • Create/delete resources via push
  • Interactive project selection
  • .dokployignore, --format json
  • Syncing global settings (registries, certificates, servers)

I have a working implementation ready in PR #21.

Dominant language
TypeScript
Stars
152
Forks
46
PR merge metrics
No merged PRs in 30d

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from Dokploy/cli

All issues in Dokploy/cli

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.