Hey folks,
I wanted to share a GitHub Action we’ve been working on over at Shipyard that makes deploying static sites to IPFS a breeze.
It implements all the current best practices for IPFS deployments in 2025.
What makes this action different?
- Uses CAR files to ensure consistent CIDs across providers
- Primary deployment to Storacha/Kubo/IPFS Cluster with optional additional Pinata/Filebase pinning for redundancy
- Automatic preview links and PR/commit status updates
- Zero opinions about your build process - works with any static site
Key Features
Merkleizes your static site into a CAR file
Multiple provider options: Storacha, IPFS Cluster, or Kubo
Optional Pinata pinning for redundancy
Optional CAR file upload to Filebase
Automatic PR comments with CID and preview links
Commit status updates
Note on why it uses CAR files?
The action merkleizes your build into a CAR file right in GitHub Actions using ipfs-car. This ensures your CID is generated during the build process and remains consistent across providers - no more CID mismatches!
Use it for publishing other data to IPFS?
While intended for static sites, you can also use the action for arbirary data, like build artefacs, that you may want to publish/pin to IPFS.
Check it out here: Deploy to IPFS Action
Built and maintained by Interplanetary Shipyard.
Would love to hear your feedback (either here or in the GitHub repo), if you give it a try!