From 0daf09285a3db89c601cf8d98e6a2bcfa8316d26 Mon Sep 17 00:00:00 2001 From: Matthias Kretschmann Date: Thu, 1 Nov 2018 19:35:18 +0100 Subject: [PATCH] switch to folder posts by default --- README.md | 7 ++++--- package.json | 1 + scripts/new.js | 22 +++++++++++++++++----- scripts/new.md | 1 + 4 files changed, 23 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 4966021d..b77ac047 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ - [🍬 Typekit component](#-typekit-component) - [✨ Development](#-development) - [🔮 Linting](#-linting) - - [🎈 Add a new project](#-add-a-new-project) + - [🎈 Add a new post](#-add-a-new-post) - [🚚 Deployment](#-deployment) - [🏛 Licenses](#-licenses) - [Posts](#-posts) @@ -163,13 +163,14 @@ npm run format npm run format:css ``` -### 🎈 Add a new project +### 🎈 Add a new post ```bash -npm run new "Hello" +npm run new "Hello World" ``` - [`scripts/new.js`](scripts/new.js) +- [`scripts/new.md`](scripts/new.md) ## 🚚 Deployment diff --git a/package.json b/package.json index 8fd6e1be..a0121ff1 100644 --- a/package.json +++ b/package.json @@ -87,6 +87,7 @@ "eslint-plugin-jsx-a11y": "^6.1.2", "eslint-plugin-prettier": "^3.0.0", "eslint-plugin-react": "^7.11.1", + "fs-extra": "^7.0.0", "markdownlint": "^0.11.0", "markdownlint-cli": "^0.13.0", "npm-run-all": "^4.1.3", diff --git a/scripts/new.js b/scripts/new.js index e8014a7f..6c4e7c17 100644 --- a/scripts/new.js +++ b/scripts/new.js @@ -1,4 +1,4 @@ -import fs from 'fs' +import fs from 'fs-extra' import path from 'path' import slugify from 'slugify' import ora from 'ora' @@ -21,12 +21,24 @@ const date = new Date().toISOString() const newContents = template .split('TITLE') .join(title) + .split('TITLE_SLUG') + .join(titleSlug) .split('DATE') .join(date) const datePath = date.slice(0, 10) +const file = `${postsPath}/${datePath}-${titleSlug}/index.md` -fs.appendFile(`${postsPath}/${datePath}-${titleSlug}.md`, newContents, err => { - if (err) spinner.fail(`Error creating post: ${err}`) - spinner.succeed(`New post '${title}' created.`) -}) +fs.outputFile(file, newContents) + .then(() => fs.readFile(file, 'utf8')) + .then(() => { + spinner.succeed(`New post '${title}' created.`) + }) + .catch(err => { + spinner.fail(`Error creating post: ${err}`) + }) + +// fs.appendFile(`${postsPath}/${datePath}-${titleSlug}.md`, newContents, err => { +// if (err) spinner.fail(`Error creating post: ${err}`) +// spinner.succeed(`New post '${title}' created.`) +// }) diff --git a/scripts/new.md b/scripts/new.md index 6cd4a9d8..db73a09c 100644 --- a/scripts/new.md +++ b/scripts/new.md @@ -3,6 +3,7 @@ type: post date: DATE title: TITLE +image: TITLE_SLUG-teaser.png tags: - tag