Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/stackbit/stackbit-medium-importer
Stackbit Medium Importer
https://github.com/stackbit/stackbit-medium-importer
medium stackbit
Last synced: 3 months ago
JSON representation
Stackbit Medium Importer
- Host: GitHub
- URL: https://github.com/stackbit/stackbit-medium-importer
- Owner: stackbit
- License: mit
- Created: 2019-03-11T16:42:49.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2022-12-09T21:44:44.000Z (about 2 years ago)
- Last Synced: 2024-10-28T22:40:45.506Z (4 months ago)
- Topics: medium, stackbit
- Language: JavaScript
- Homepage: https://www.stackbit.com/medium
- Size: 123 KB
- Stars: 15
- Watchers: 5
- Forks: 3
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# stackbit-medium-importer
A small library to convert [medium export](https://medium.com/me/export) zip files to static-site-generator (SSG) friendly Markdown files.
# Demo
The Medium importer can be seen in action on the [Stackbit website](https://www.stackbit.com/medium).
# Install
```
npm install @stackbit/stackbit-medium-importer
```# How to use
The module comes with a utility to invoke the importer directly.
```
$ medium-importer
Usage: medium-importer --input-file= --output-dir= --concurrency= --download-images= --import-drafts=Options:
--help Show help [boolean]
--version Show version number [boolean]
--input-file, -i medium export zip file [required]
--output-dir, -o target folder for the converted files [required]
--concurrency, -c number of posts to process in parallel [default: 1]
--download-images, -d should images be downloaded [default: true]
--import-drafts, -r should drafts be imported [default: true]Examples:
medium-importer -i medium-export.zip -o output/
```# Importer output
The output directory is populated with the imported data, following a structure that makes it straightforward to later use with an SSG. For certain SSG's (like Hugo) it's possible to point the utility directly at your project.
The output directories can be configured when working with the library directly.
### `content/posts`
Markdown pages representing imported Medium posts.
```yaml
---
template: post
title: My Blog Post
date: 2018-10-08T15:01:02.452Z
subtitle: >-
This post is a posty post, and this is its subtitle.
excerpt: >-
An excerpt of the post
thumb_img_path: >-
images/My-Blog-Post/image.jpeg
content_img_path: >-
images/My-Blog-Post/splash.jpeg
---# My Post
Markdown content goes **HERE**
```### `static/images`
* Per-post images organized in directories with the post's slug.
* Global images extracted from the Medium export: `avatar.png` if available.### `data/data.json`
Extraced information in `JSON` format:
```json
{
"author": {
"name": "My Name",
"email": "[email protected]",
"avatar": "images/avatar.png"
},
"social": {
"twitter": {
"username": "@myuser",
"url": "https://twitter.com/@myuser"
}
}
```