gatsby-blog-post-scheduler
Version:
A simple CLI to generate and schedule a blog post based on Gatsby blog starter.
31 lines (25 loc) • 761 B
JavaScript
const fs = require("fs")
const path = require("path")
module.exports = {
getCurrentDirectoryBase: () => {
return path.basename(process.cwd())
},
directoryExists: filePath => {
return fs.existsSync(filePath)
},
isDirectoryGitRepo: () => {
return fs.existsSync(".git")
},
createDirectory: dir => {
return fs.mkdirSync(dir, { recursive: true })
},
createPostTemplate: (title, fileName, desc, date, tags) => {
let formatDate = date.includes(":")
? `${date.replace(" ", "T")}.000Z`
: `${date}T12:00:00.000Z`
return fs.writeFileSync(
fileName,
`---\ntitle: "${title}"\ndescription: "${desc}"\ndate: "${formatDate}"\ntags: ${tags}\npublished: true\n---`
)
},
}