ZYVOPDOCS
MULTI-PLATFORM SYNC

Quickstart

Install the ZyVOP CLI, connect publishing destinations, and publish your first article in under 5 minutes.

Quickstart Guide

This guide will walk you through setting up ZyVOP, configuring your publishing targets, and deploying your first technical article across multiple developer platforms.


Prerequisites

Before starting, ensure you have:

  • Node.js v20.0.0 or higher
  • A free account on ZyVOP
  • Accounts on the platforms you want to publish to (e.g. DEV.to, Hashnode, Medium, Bluesky, WordPress)

Step 1: Install the CLI

Install the official ZyVOP CLI globally using npm, or run commands directly on demand using npx.

npm install -g zyvop

Verify the installation:

zyvop --version

Step 2: Authenticate Your CLI

Authenticate your CLI session with your ZyVOP account.

zyvop login

This command prompts you in the terminal for your email and password, or you can paste your Developer Token directly. If you signed up via Google or GitHub, pass your Developer Token from Settings → Integrations:

zyvop login --token zv_<48-hex-character-token>

Your token is safely stored locally in ~/.zyvop/config.json with restricted permissions (0600).

CI/CD & Headless Environments

For automated environments like GitHub Actions or Docker containers, set the ZYVOP_TOKEN environment variable instead of interactive login:

export ZYVOP_TOKEN="zv_<48-hex-character-token>"

To verify your authentication status at any time, run:

zyvop whoami

Step 3: Connect Publishing Destinations

Before publishing, connect the platforms you wish to target:

  1. Open your ZyVOP Integrations Settings.
  2. Connect your desired platforms:
    • DEV.to: Generate an API key under dev.to/settings/extensions and paste it into ZyVOP.
    • Hashnode: Generate a Personal Access Token from your Hashnode Developer Settings and specify your publication host (e.g. engineering.yourdomain.com).
    • Medium: Connect via Medium Integration Token.
    • Bluesky: Connect using your Handle and App Password (generated in Bluesky Settings → App Passwords).
    • WordPress: Connect via Application Passwords or Jetpack REST API.

Step 4: Create a Markdown Post

Create a markdown file with YAML frontmatter specifying your article metadata.

hello-zyvop.md
---
title: "Building Resilient Event-Driven Services"
description: "A hands-on breakdown of idempotency keys, dead-letter queues, and outbox patterns."
tags: ["microservices", "architecture", "nodejs", "kafka"]
canonical_url: "https://myblog.dev/posts/event-driven-services"
published: false
---

# Building Resilient Event-Driven Services

Event-driven architectures provide loose coupling and horizontal scalability, but handling transient network failures requires disciplined design patterns.

## The Outbox Pattern

Rather than publishing events directly during a database transaction, persist events to an `outbox` table within the same ACID transaction:

```sql
BEGIN TRANSACTION;
INSERT INTO orders (id, customer_id, total) VALUES ('ord_101', 'cust_502', 89.00);
INSERT INTO outbox_events (event_id, event_type, payload) 
VALUES ('evt_900', 'OrderCreated', '{"order_id": "ord_101"}');
COMMIT;

---

## Step 5: Test and Publish

### 1. Perform a Dry Run (Recommended)

Before publishing live, inspect how ZyVOP validates your frontmatter and resolves your target platforms:

```bash
zyvop publish ./hello-zyvop.md --dry-run

2. Publish Live

When you're ready, publish across your enabled platforms:

zyvop publish ./hello-zyvop.md

You will see real-time output showing the status of each destination:

✓ Validated frontmatter in hello-zyvop.md
✓ Uploaded article to ZyVOP Hub
✓ Cross-posted to DEV.to: https://dev.to/johndoe/building-resilient-event-driven-services-3k9a
✓ Cross-posted to Hashnode: https://engineering.johndoe.com/building-resilient-event-driven-services
✓ Cross-posted to Medium: https://medium.com/@johndoe/building-resilient-event-driven-services-71a2b
✓ Broadcast to Bluesky: https://bsky.app/profile/johndoe.bsky.social/post/3kmv89x1

🎉 Article published successfully to 4 platforms in 1.4s!

Next Steps

Now that you've published your first article, explore advanced workflows:

On this page