Fission IPFS Storage Adapter for Ghost Blog

This exists! Check the Github repo. This is bundled with the Ghost Blog on Heroku with IPFS.

Description

Using ghost-storage-adapter-s3 as a model, create an IPFS adapter for the Ghost 2.x blog system that uses the FISSION IPFS API.

References:

User Impact

Who would want to use this and why?

Fission uses Ghost for our blog, and maintains heroku-ipfs-ghost, a “Deploy to Heroku” distribution of Ghost. We will include the adapter in heroku-ipfs-ghost and make it work with our upcoming Heroku add on.

References:

I made a new repo that includes the previous Ghost2 work.

Original blog post on this:

Features

Create a Github repo that contains the storage adapter

In such a way that it can be included via NPM/yarn in package.json. Expects configuration through env variables compatible with how Heroku works. Should mirror how the S3 adapter works, except with different variables.

Initial template repo created here: GitHub - fission-codes/ghost-storage-adapter-ipfs: A storage adapter for the Ghost blogging platform that stores files in IPFS with Fission

Bundle with Fission Heroku add-on

For deployment on Heroku, the heroku-ipfs-ghost app.json should include adding the Fission IPFS add-on.

Choice of gateway

Choose which gateway to use. Defaults to ipfs.io, or add your own – e.g. ipfs.runfission.com.

Future / Ideas / Research

Serve IPFS “natively”

In an IPFS enabled browser, can we detect this and serve up IPFS hashes instead of Web2 gateway URI + IPFS hash?

I was looking at the s3-adapter and found a :bug:

Official docs for creating custom storage adapters in Ghost look like a good place to start.

1 Like