import Medium posts over to your Ghost blog [WIP]
Find a file
2019-12-24 20:30:01 +05:30
.gitignore Add content directory to .gitignore 2019-10-11 16:29:16 +05:30
functions.js Upload profile pic during user creation 2019-12-24 20:30:01 +05:30
index.js Convert test WebDAV function into an actual reusable one 2019-12-24 14:50:13 +05:30
LICENSE Add LICENSE and README 2019-10-11 16:49:33 +05:30
package.json Implement test WebDAV function 2019-12-19 17:50:24 +05:30
README.md Rename project: carpe-medium -> Seance 2019-12-10 18:21:43 +05:30
yarn.lock Implement test WebDAV function 2019-12-19 17:50:24 +05:30

Seance

relay content from Medium to Ghost [WIP]

Note: This app is still work in progress!

installation

To install, run the following commands:

cd seance
yarn install
yarn link

The seance command should now be available in your path. If not, check permissions or run node ./index.js directly.

usage

The main point of this tool is to easily pull Medium posts and add them to a Ghost site, so that you can (for example) cross-post your content between Medium and Ghost.

This project is created for the Snipette website, and as such might have some Snipette-specific features. However, you're free to use it as you like, and any contributions are welcome!

Pull a post from Medium

# replace the URL with an actual Medium post
seance fetch https://medium.com/@username/some-post-abc123

This will create a new folder in ./content containing:

  • the post as a markdown file
  • image files for each post (linked appropriately)
  • a JSON file with post metadata

Push a post to Ghost

# replace some-post with post directory
seance push content/some-post

Currently, this command does not do anything. We're working on it!

Copy a Medium post directly to Ghost

# replace the URL with an actual Medium post
seance import https://medium.com/@username/some-post-abc123

This is basically the other two commands combined, so, like the push command, doesn't do anything for the second part as of now.

Import a Medium user to Ghost

# Replace username and email with appropriate values
# The username should match an existing Medium user
seance content username user@example.com

This will output a JSON object. Copy-paste that object into a new file (eg. ghost-import.json), then open your Ghost Admin and import the file via the "Labs" section. This is required becaues Ghost doesn't let you directly add users; it only lets you import them.

credits

contributing

We're developing this software internally for Snipette, but, if you find our tool useful and think you can improve it, we'd be happy to have your contributions! Just start an issue or open a pull request :)

license

This code is released under the MIT license. See the LICENSE file for details.