youngrove / gatsby-starter-mnml-blog

Home Page:https://mnmlblog.gatsbyjs.io/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

mnml_blog

Gatsby Mnml Blog Starter


A Starter template to build The Most Minimal Blog with TypeScript & Styled Components.

πŸ„ Getting Started

I tend to pursue minimalism in my daily life. It is one of my philosophy of life to minimize the number of cases and focus on essential parts.

While making this starter, I tried to minimize the design and functionality.
For example, Instead of using the About page, I wanted to focus more on managing my Github profile. therefore I have placed a button in the navigation that takes to Github profile. Also, rather than manually dividing categories, it is designed to automatically categorize items containing a lot of tags.

In addition, I considered component reusability and tried to keep the logic concise.

🐾 Features

  • Typography driven design
  • Gatsby v4 Supports
  • Utterances Supports
  • Tags
  • Pagination
  • SEO
  • MDX

πŸ“ Folder Structure

.
β”œβ”€β”€ content
β”‚   β”œβ”€β”€ assets # Images or some stuff for Posting
β”‚   └── blog # Postings (Each Folder name will be url path)
β”œβ”€β”€ src
β”‚   β”œβ”€β”€ components
β”‚   β”œβ”€β”€ layouts
β”‚   β”œβ”€β”€ hooks # Custom hooks for useStaticQuery (page query in templates)
β”‚   β”œβ”€β”€ images
β”‚   β”œβ”€β”€ pages # default 404 pages (it will updates soon)
β”‚   β”œβ”€β”€ styles
β”‚   β”‚   └── media.ts # media query variables(mobile, tablet, laptop) pass to GlobalStyle
β”‚   β”œβ”€β”€ templates
β”‚   β”œβ”€β”€ types
β”‚   └── utils
β”œβ”€β”€ static
β”œβ”€β”€ .eslintrc.json
β”œβ”€β”€ .gitignore
β”œβ”€β”€ gatsby-config.js
β”œβ”€β”€ gatsby-node.js # config for pagination & tags
β”œβ”€β”€ LICENSE
β”œβ”€β”€ package-lock.json
β”œβ”€β”€ package.json
β”œβ”€β”€ README.md
└── tsconfig.json

βš™οΈ Configuration

Edit the file at src/config.ts to change the configuration of tags and pagination.

export const POST_PER_PAGE = 1;
export const TAG_SMALL = 1;
export const TAG_MEDIUM = 3;
export const TAG_LARGE = 5;

If you change POST_PER_PAGE it will changes perPage in pagination.

The tag sizes is classified into three categories, and each standard can be set.

About

https://mnmlblog.gatsbyjs.io/

License:BSD Zero Clause License


Languages

Language:TypeScript 83.3%Language:JavaScript 16.7%