Practical overview
When it fits
Use Omnipin when a website deployment needs decentralized storage, multi-provider content replication, or ENS and DNSLink name updates in a CLI workflow.
Who it is for
- Developers publishing websites to decentralized storage.
- Teams seeking to automate website deployments through CI/CD templates.
- Website operators who want to replicate content across independent providers or connect an existing ENS or DNS name.
Documented uses
- Deploy website content to IPFS or Swarm.
- Pin a website to independent storage providers in one workflow.
- Update ENS records or connect DNS names through DNSLink after deployment.
- Incorporate decentralized website deployments into a CI/CD pipeline using the provided templates.
Requirements & limits
The repository describes Omnipin as requiring no sign-up. It is open source under the MIT license.
- Supports both IPFS and Swarm.
- Can pin content to independent storage providers; the specific providers are not named in the README.
- The README describes automatic ENS updates and DNSLink support for DNS names.
- Safe integrations are described for protected updates.
- CI/CD templates are included, but supported CI providers are not specified.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Install Omnipin and deploy to the Filecoin calibration testnet
Set up Omnipin and deploy the default dist directory to IPFS using Filecoin calibration.
Before you start
- Node.js 20+, Deno 2.2.11+, or Bun.
- An Ethereum private key and testnet FIL and USDfc in the account for the Filecoin example.
Steps
Install Omnipin globally using the command for your chosen supported runtime: the command below,
pnpm i -g omnipin,bun i -g omnipin, ordeno install --global --allow-read --allow-env --allow-write --allow-net npm:omnipin.npm i -g omnipinCreate an Ethereum private key with
cast wallet new.Save the private key to the
OMNIPIN_FILECOIN_TOKENvariable, then request testnet FIL and USDfc for the account from the faucets described in the guide.Run
omnipin deploy --providers=Filecoin --filecoin-chain=calibrationto deploy the defaultdistdirectory to Filecoin calibration.
Expected outcome
Omnipin deploys the site and reports a root CID and provider information.
Guide limitations
- The Filecoin example uses the calibration testnet; storage on Filecoin requires FIL and USDfc.
- Uploading to one IPFS provider does not guarantee decentralization or censorship resistance; the guide recommends pinning to at least one or two more providers.
Deploy to IPFS and propose an ENS update through Safe
Deploy a site and propose an ENS Content-Hash update for approval by Safe owners.
Before you start
- Omnipin installed and storage provider credentials configured.
- A Safe that owns the ENS name, plus a delegate account whose private key is available for
OMNIPIN_PK.
Steps
Create a new Safe or use an existing one that owns the ENS name.
In Safe settings, add a delegate, typically a fresh EOA created for deployments, and save its private key as
OMNIPIN_PK.Deploy with the ENS name and Safe address, for example:
omnipin deploy --ens omnipin.eth --safe eth:0xyoursafeAddress.Have the other Safe owners confirm and execute the proposed transaction in the Safe UI.
Expected outcome
After the Safe transaction is executed and indexed, the ENS Content-Hash record points to the deployment.
Guide limitations
- The delegate key must be present as
OMNIPIN_PK; it proposes transactions but cannot update ENS by itself in this flow. - The ENS update requires a network fee, which varies with network load.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 13 October 2026
- Original website title
- omnipin/omnipin · Official homepage title · retained in its source language

