GatsbyReactPortfolioBlogStarter

gatsby-markdown-blog — Gatsby Portfolio Template

By SafdarJamal

A Gatsby and Markdown starter template for personal blogs and portfolios, including Home, About, Blog, and Contact pages, styled with Sass, and deployable to Netlify or Vercel.

Explore the design

Compare the page layouts and mobile experience. Open any screenshot for a closer look.

3 previews
Desktop homepage1 / 3
Desktop captureTop of page

Actual screenshot captured by the server browser.

All pages & views 3

Screenshots show visual appearance; interactive behavior may differ.

Recorded 2026-10-02View source

What stands out

A quick read of the recorded project description.

01

A minimal blog and personal site starter template with Markdown-driven content

02

Includes four editable pages: Home, About, Blog, and Contact

03

Each feature is split into separate components, making it easy to customize or dismantle and rewrite

04

Styles are written in Sass, and site meta tags are managed via React Helmet

05

Provides Netlify and Vercel deployment entry points, MIT license

Template Details

This is a minimal blog starter template built with Gatsby, with content driven by Markdown, suitable for personal websites or writing-focused sites. The repository provides four editable pages—Home, About, Blog, and Contact—and splits each section into separate components, making it easy to modify or dismantle and rewrite as needed.

Styling uses Sass, and site metadata is managed via React Helmet, so you can edit meta tags such as title and description yourself. The project structure follows Gatsby conventions and includes configuration files such as gatsby-config.js, gatsby-node.js, gatsby-browser.js, and gatsby-ssr.js, making it easy to integrate Gatsby plugins and customize the build process.

The template is positioned as a minimal starting point; the README explicitly states that it is designed to be customized or dismantled, and it does not provide complex features. Before use, you need to install the Gatsby CLI, create a site using this repository as a template via the gatsby new command, then enter the directory and run gatsby develop to preview locally. For deployment, the README provides deployment buttons for Netlify and Vercel.

The license is MIT, allowing free use, modification, commercial use, and distribution of this version of the code, provided the copyright and license notice are retained; third-party assets such as images, fonts, and icons in the demo need to be checked separately for licensing, and external services such as domains and hosting may incur costs.

GatsbyReactPortfolioBlogStarter

Is it right for your project?

Use Cases

  • Building a personal blog for writing in Markdown
  • Creating a personal portfolio website with a blog section
  • Serving as a starting project for learning Gatsby pages, components, and configuration structure
  • Needing a lightweight site skeleton that can be freely modified or even dismantled and rewritten

Suitable For

  • Front-end developers familiar with or willing to learn Gatsby and React
  • Personal bloggers who write articles in Markdown
  • Developers who need a minimal site starting point that can be deeply customized

Getting started & customization

Use these recorded setup notes alongside the repository instructions for your chosen version.

  1. 1

    First install the Gatsby CLI, then run gatsby new my-blog-starter https://github.com/SafdarJamal/gatsby-markdown-blog to create a site

  2. 2

    After entering the project directory, run gatsby develop; the local default address is http://localhost:8000

  3. 3

    Data queries can be debugged at http://localhost:8000/___graphql

  4. 4

    Site metadata is configured in gatsby-config.js, and page content is edited under src/pages

  5. 5

    For deployment, you can use the Netlify or Vercel buttons provided in the README

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

This entry covers the free version under the MIT license in a public repository; the free scope is the code of this version, and does not mean external services or third-party assets are free.

Must comply with when using

  • Allows free use, modification, commercial use, and distribution of this version of the code.
  • When distributing copies or substantial portions of the code, retain the original author's copyright notice and the full MIT license notice.
  • The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.

Additional costs & items to verify

  • This template is positioned as a minimal starter template for personal blog/writing websites, not a complete solution for general commercial websites or e-commerce, etc.
  • The design is deliberately minimal; the README states its purpose is for users to customize or dismantle and rewrite themselves, and it does not provide complex out-of-the-box features.
  • Before use, the Gatsby CLI tool must be installed, which is an external development environment dependency.
  • A site must be created using the Gatsby CLI with this repository as a template, rather than being a directly downloadable static file ready to use.
  • Demo images, fonts, icons, and other third-party assets need to be checked under their respective licenses and cannot be judged solely by the code's MIT license.
  • External services such as domains, hosting, databases, payments, or AI may incur additional charges.
View Original Text Basis

Permission is hereby granted, free of charge

Original License Text

A minimal starter template for building personal/blogging websites with Gatsby, Markdown, and Netlify.

Original README

Minimal responsive design - made to customize or tear apart

Original README

- [Gatsby CLI](https://www.gatsbyjs.com/docs/tutorial/part-zero/#using-the-gatsby-cli)

Original README

gatsby new my-blog-starter https://github.com/SafdarJamal/gatsby-markdown-blog

Original README
https://github.com/SafdarJamal/gatsby-markdown-blog/blob/master/LICENSEhttps://github.com/SafdarJamal/gatsby-markdown-blog/blob/master/README.md

Compiled by DeepSeek based on repository license and README ·2026-10-02. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.

Project checks & description sources

Template Information

Source platforms
GitHub
Documentation and maintenance reference score
More documented · 77 / 100
Technologies
Gatsby · React
Website type
Portfolio · Blog · Starter
How this score is calculated

Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.

What to verify for this project

Repository update recorded
2023-01-11
Screenshot last checked
2026-10-02

A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.

The catalog identifies Gatsby as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.

Use a selection guide →

How this description was prepared

AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.

Automatically checked against source and license rules; no manual editorial review.

Inspect the recorded source material

SHA-256: 1cfab3bf88a17a665fe622bd0fb1d77d0a141246ad703bfbe1cd853acd0e074c

2026-10-02T11:21:42.359Z

Source file / repository
<p align="center">
    <img alt="Gatsby" src="https://www.gatsbyjs.com/Gatsby-Monogram.svg" width="60" />
</p>

<h1 align="center">
  <a href="https://the-gatsby-markdown-blog.netlify.app">
    Gatsby Markdown Blog
  </a>
</h1>

<p align="center">
  A minimal starter template for building personal/blogging websites with Gatsby, Markdown, and Netlify.
</p>

## Features

- A simple landing page with blog functionality powerd by Markdown
- Editable Pages: Landing, About, Blog and Contact page
- Includes React Helmet to allow editing site meta tags
- Uses Sass for styling
- Minimal responsive design - made to customize or tear apart
- Blazing fast loading times thanks to pre-rendered HTML and automatic chunk loading of JS files
- Separate components for everything
- Perfect score on Lighthouse for SEO, Accessibility, and Performance

## Prerequisites

- [Gatsby CLI](https://www.gatsbyjs.com/docs/tutorial/part-zero/#using-the-gatsby-cli)

## 🚀 Quick start

1.  **Create a Gatsby site.**

    Use the Gatsby CLI to create a new site, specifying this blog starter.

    ```shell
    # create a new Gatsby site using this blog starter
    gatsby new my-blog-starter https://github.com/SafdarJamal/gatsby-markdown-blog
    ```

1.  **Start developing.**

    Navigate into your new site’s directory and start it up.

    ```shell
    cd my-blog-starter/
    gatsby develop
    ```

1.  **Open the source code and start editing!**

    Your site is now running at `http://localhost:8000`!

    _Note: You'll also see a second link: _`http://localhost:8000/___graphql`_. This is a tool you can use to experiment with querying your data. Learn more about using this tool in the [Gatsby tutorial](https://www.gatsbyjs.com/tutorial/part-five/#introducing-graphiql)._

    Open the `my-blog-starter` directory in your code editor of choice and edit `src/pages/index.js`. Save your changes and the browser will update in real time!

## 🧐 What's inside?

A quick look at the top-level files and directories you'll see in a Gatsby project.

    .
    ├── node_modules
    ├── src
    ├── .gitignore
    ├── .prettierrc
    ├── gatsby-browser.js
    ├── gatsby-config.js
    ├── gatsby-node.js
    ├── gatsby-ssr.js
    ├── LICENSE
    ├── package-lock.json
    ├── package.json
    └── README.md

1.  **`/node_modules`**: This directory contains all of the modules of code that your project depends on (npm packages) are automatically installed.

2.  **`/src`**: This directory will contain all of the code related to what you will see on the front-end of your site (what you see in the browser) such as your site header or a page template. `src` is a convention for “source code”.

3.  **`.gitignore`**: This file tells git which files it should not track / not maintain a version history for.

4.  **`.prettierrc`**: This is a configuration file for [Prettier](https://prettier.io/). Prettier is a tool to help keep the formatting of your code consistent.

5.  **`gatsby-browser.js`**: This file is where Gatsby expects to find any usage of the [Gatsby browser APIs](https://www.gatsbyjs.com/docs/browser-apis/) (if any). These allow customization/extension of default Gatsby settings affecting the browser.

6.  **`gatsby-config.js`**: This is the main configuration file for a Gatsby site. This is where you can specify information about your site (metadata) like the site title and description, which Gatsby plugins you’d like to include, etc. (Check out the [config docs](https://www.gatsbyjs.com/docs/gatsby-config/) for more detail).

7.  **`gatsby-node.js`**: This file is where Gatsby expects to find any usage of the [Gatsby Node APIs](https://www.gatsbyjs.com/docs/node-apis/) (if any). These allow customization/extension of default Gatsby settings affecting pieces of the site build process.

8.  **`gatsby-ssr.js`**: This file is where Gatsby expects to find any usage of the [Gatsby server-side rendering APIs](https://www.gatsbyjs.com/docs/ssr-apis/) (if any). These allow customization of default Gatsby settings affecting server-side rendering.

9.  **`LICENSE`**: This Gatsby starter is licensed under the [MIT license](https://github.com/SafdarJamal/gatsby-markdown-blog/blob/master/LICENSE).

10. **`package-lock.json`** (See `package.json` below, first). This is an automatically generated file based on the exact versions of your npm dependencies that were installed for your project. **(You won’t change this file directly).**

11. **`package.json`**: A manifest file for Node.js projects, which includes things like metadata (the project’s name, author, etc). This manifest is how npm knows which packages to install for your project.

12. **`README.md`**: A text file containing useful reference information about your project.

## 🎓 Learning Gatsby

Looking for more guidance? Full documentation for Gatsby lives [on the website](https://www.gatsbyjs.com/). Here are some places to start:

- **For most developers, we recommend starting with our [in-depth tutorial for creating a site with Gatsby](https://www.gatsbyjs.com/tutorial/).** It starts with zero assumptions about your level of ability and walks through every step of the process.

- **To dive straight into code samples, head [to our documentation](https://www.gatsbyjs.com/docs/).** In particular, check out the _Guides_, _API Reference_, and _Advanced Tutorials_ sections in the sidebar.

## 💫 Deploy

[![Deploy to Netlify](https://www.netlify.com/img/deploy/button.svg)](https://app.netlify.com/start/deploy?repository=https://github.com/SafdarJamal/gatsby-markdown-blog)

[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/import/project?template=https://github.com/SafdarJamal/gatsby-markdown-blog)
Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.