
Moving a blog can feel risky when you have years of posts, code samples, and images tied to one platform. A safer approach is to copy your articles first, review them in their new home, and decide what to do with the originals afterward.
ZyVOP imports articles as private drafts, so you can check the results before publishing. Your Hashnode or DEV.to posts stay where they are during the import.
Before you start
Make a list of the posts you want to move and decide which platform should be the primary home for each article. Keep your original blog available while you review the imported drafts.
Also decide how you want to handle duplicate versions. ZyVOP retains the source article URL as the canonical URL during import. If you plan to keep the original post live, that may be the right setting. If ZyVOP should become the primary version, review the canonical URL before publishing. Canonical URLs help search engines understand your preference, but search engines make the final choice. Google Search Central explains canonicalization.
Move your articles from DEV.to
Open the DEV.to migration page.
Enter your DEV.to username or profile URL, such as
dev.to/yourusername.Preview the articles ZyVOP finds. You can also paste an individual article URL to import one post.
Choose the option to import the archive as private drafts.
Open your drafts and review the imported posts before publishing.
The archive import works with publicly published articles. It carries over article content, tags, cover image references, publication dates, and the original article URL. Private DEV.to drafts aren’t included. DEV-specific Liquid tags may be converted to standard Markdown, so check those sections in the imported copy. See the DEV.to migration details.
Move your articles from Hashnode
For a full Hashnode archive, the most reliable route is a GitHub backup ZIP:
As a publication owner or admin, open Publication Dashboard → GitHub in Hashnode.
Select Connect, install the Hashnode GitHub Backup app, and choose a repository. Create an empty repository first if you need one.
Run Backup all posts. If you also want drafts, run Backup all drafts.
Check Deliveries in Hashnode to confirm the backup succeeded.
Download the repository as a ZIP.
In ZyVOP, upload it from Dashboard → Posts → Import Articles → Hashnode Backup.
Hashnode lists GitHub backups as a Pro feature, and its backup includes Markdown files with publishing metadata. Read Hashnode’s Pro announcement.
You can also preview a public Hashnode publication by entering its domain on the Hashnode migration page. If the archive can’t be accessed, try importing individual public article URLs instead. Access to public articles can vary.
Review the imported drafts
Before publishing, check a few posts from different parts of your archive:
Make sure headings, code blocks, lists, and links render correctly.
Open images and verify the cover image. Replace externally hosted images if you want copies that don’t depend on the original platform.
Check tags, publication dates, and canonical URLs.
Review older posts for embeds or platform-specific formatting that may need editing.
Imports copy your articles; they don’t move your comments, reactions, or followers into ZyVOP. Keep your original profile available if readers still use it to find you or discuss older posts.
Publish when you’re ready
Once your drafts look right, decide which ones to publish and what to do with the originals. If you control the old domain, redirects can help send readers to the new URLs. If the articles remain live on both platforms, make sure the canonical settings match the plan you chose.
A staged move gives you time to check the details before changing where readers find your work. Start with a small batch, review it, and then import the rest of your archive.
Learn more: Import from DEV.to · Import from Hashnode · Google’s guide to canonical URLs
Comments(0)
Join the discussion by logging into your account.
No comments yet. Be the first to comment!