- Designed with tailwindcss, tailwindcss/typography
- Generate post easily using
post-generator
tool - Simple layout
- Tags
- Pagination
- Dark mode
- SEO friendly
- Sitemap
- Syntax highlighter with Shiki
- Comments with utteranc.es
npm install --global @gridsome/cli # or yarn add global @gridsome/cli
- Clone bold-gridsome using Git
git clone https://github.com/k4sud0n/gridsome-bold.git
- Install dependencies
cd bold-gridsome && npm install # or yarn
-
yarn dev
to start a local dev server athttp://localhost:8080
-
Happy coding 🎉🙌
- You can edit site name and url by editing
girdsome.config.js
.
...
module.exports = {
siteName: 'Your site title',
siteDescription: 'Your site description',
siteUrl: 'Your site URL',
...
};
- Config Google Analytics
...
module.exports = {
{
use: '@gridsome/plugin-google-analytics',
options: {
id: 'UA-XXXXXXXXX-X' // Add your Google Analytics code here
}
},
}
- Config Sitemap
module.exports = {
{
use: 'gridsome-plugin-rss',
options: {
contentTypeName: 'Post',
feedOptions: {
title: 'Your Blog Title',
feed_url: 'Your Blog Address/rss.xml',
site_url: 'Your Blog Address',
},
feedItemOptions: (node) => ({
title: node.title,
description: node.summary,
date: node.date,
url: 'Your Blog Address' + node.path,
author: 'Your name',
}),
output: {
dir: './static',
name: 'rss.xml',
},
},
},
}
- Config utteranc.es
<script>
import SEO from '../mixins/SEO.vue';
export default {
mounted() {
const script = window.document.createElement('script');
const utterance = window.document.getElementById('comments');
const attrs = {
src: 'https://utteranc.es/client.js',
repo: 'k4sud0n/gridsome-bold', // Your repo name
'issue-term': `${this.$page.post.title} (${this.$page.post.date})`,
theme: 'github-light', // utteranc.es theme
crossorigin: 'anonymous',
async: true,
};
Object.entries(attrs).forEach(([key, value]) => {
script.setAttribute(key, value);
});
utterance.appendChild(script);
},
};
</script>
You can easily generate post using custom script called post-generator.js
.
You can simply npm run post
in terminal and the script will automatically add post header.
$ npm run post
What's your post title: hello world
What's your post's summary: hello everybody
Done!
After running this script, you can check there is new markdown file in post folder.