All Projects → greglobinski → Gatsby Styled Blog Starter

greglobinski / Gatsby Styled Blog Starter

Licence: mit
My first GatsbyJS starter.

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Gatsby Styled Blog Starter

Gatsby Starter Bee
🐝Full Package | Simple | Fresh UI | Blog Template :: Let's start to blogging with gatsby-starter-bee!
Stars: ✭ 416 (+383.72%)
Mutual labels:  blog, gatsby, starter
Gatsby Starter Minimal Blog
Typography driven, feature-rich blogging theme with minimal aesthetics. Includes tags/categories support and extensive features for code blocks such as live preview, line numbers, and line highlighting.
Stars: ✭ 752 (+774.42%)
Mutual labels:  blog, gatsby
Gatsby Mdx Netlify Cms Starter
Gatsby-MDX with Netlify CMS. Support React components in your CMS editor!
Stars: ✭ 84 (-2.33%)
Mutual labels:  gatsby, starter
Leo Blog
My 🏡 on the ☁️
Stars: ✭ 27 (-68.6%)
Mutual labels:  blog, gatsby
Blog
Source for my blazing fast blog
Stars: ✭ 83 (-3.49%)
Mutual labels:  blog, gatsby
Gatsby Material Starter
A high performance blog starter with Material design in mind for GatsbyJS.
Stars: ✭ 456 (+430.23%)
Mutual labels:  blog, gatsby
Gatsby Starter Alchemy
A Gatsby starter with PostCSS powers ✨🔮
Stars: ✭ 23 (-73.26%)
Mutual labels:  blog, gatsby
Devblog
A lightweight, customizable personal blog template built with GatsbyJS and React
Stars: ✭ 312 (+262.79%)
Mutual labels:  blog, gatsby
No.lol
🍩 Lauren's personal blog
Stars: ✭ 46 (-46.51%)
Mutual labels:  blog, gatsby
Dantecalderon.dev
💻 ❤️ My personal website
Stars: ✭ 51 (-40.7%)
Mutual labels:  blog, gatsby
Junhobaik.github.io
Blog, Gatsby Theme(Starter), Built with Gatsby
Stars: ✭ 63 (-26.74%)
Mutual labels:  blog, gatsby
Gatsby Starter Tyra
Tyra - Feminine Gatsby Starter optimized for SEO
Stars: ✭ 74 (-13.95%)
Mutual labels:  blog, gatsby
Gatsby Starter Prismic
A typography-heavy & light-themed Gatsby Starter which uses the Headless CMS Prismic.
Stars: ✭ 381 (+343.02%)
Mutual labels:  blog, gatsby
Gatsby Starter Tailwind
Gatsby starter styled with Tailwind CSS
Stars: ✭ 466 (+441.86%)
Mutual labels:  gatsby, starter
Jekyll Klise
🏖 Klisé is a minimalist Jekyll theme for running a personal site or blog, light & dark mode support. (https://klise.now.sh)
Stars: ✭ 312 (+262.79%)
Mutual labels:  blog, starter
Piyushmehta.com
Piyush's HomePage https://piyushmehta.tech and
Stars: ✭ 19 (-77.91%)
Mutual labels:  blog, gatsby
Gatsby Themes
Gatsby themes for blazing fast sites. We are working on the next version of the Flex theme. See https://github.com/reflexjs/reflexjs
Stars: ✭ 275 (+219.77%)
Mutual labels:  blog, gatsby
Medium To Own Blog
Switch from Medium to your own blog in a few minutes
Stars: ✭ 3,017 (+3408.14%)
Mutual labels:  blog, gatsby
Blog
My blog created with React, Gatsby & Markdown
Stars: ✭ 29 (-66.28%)
Mutual labels:  blog, gatsby
Taniarascia.com
💾 ‎ Personal website running on Gatsby, React, and Node.js.
Stars: ✭ 1,183 (+1275.58%)
Mutual labels:  blog, gatsby

This project is discontinued, but hey there is a successor. Take a look at gatsby-starter-personal-blog

StyledBlog starter for Gatsby

DEMO website

This is a starter/theme for Gatsby.

Description

The goal is to make a theme using Gatsby which behaves like a native app.

No webfonts

StyledBlog uses no webfonts, instead system-fonts are used. So the typography looks a litle different on different devices. This is the whole font setting /src/styles/global.js

body {
    font-family: "-apple-system", "BlinkMacSystemFont", "Segoe UI", "Roboto","Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", "sans-serif";
  }

The inspiration not to use webfonts came from reactjs.org. But, if you need webfonts, it's easy to configure, as shown in Customization section below.

styled-components

StyledBlog uses styled-components and gatsby-plugin-styled-components. Three important files to notice: /src/styles/global.js with global styles, /src/styles/colors.js with color palette variables and /src/styles/theme.js with a styled-component theme.

Setup

If you are completely new to Gatsby, start with one of its official blog starters. If you have already went through with the tutorials install the starter using gatsby new command.

gatsby new [NEW_SITE_DIRECTORY_FOR_YOUR_BLOG] https://github.com/greglobinski/gatsby-styled-blog-starter.git

Customization

Website data

Edit \src\utils\siteConfig.js

module.exports = {
  pathPrefix: "/",
  siteTitle: "Gatsby StyledBlog starter",
  siteLongTitle: "Gatsby StyledBlog Theme/Starter",
  siteUrl: "https://gsbs.greglobinski.com",
  siteLanguage: "en",
  siteLogo: "/logos/logo-1024.png",
  siteDescription: "This is a starter/theme for GatsbyJS",
  // manifest.json
  manifestName: "StyledBlog Gatsby starter",
  manifestShortName: "StyledBlog",
  manifestStartUrl: "/",
  manifestBackgroundColor: colors.first,
  manifestThemeColor: colors.firstLight,
  manifestDisplay: "standalone",
  // Author note
  authorName: "Mr. Gatsby",
  authorDescription: `Proin ornare ligula eu tellus tempus elementum. Aenean bibendum iaculis mi, nec blandit lacus interdum vitae. Vestibulum non nibh risus, a scelerisque purus. `,
  // texts
  copyright:
    "This is the place for a copyrigh note - editable through config object"
};

Color palette

Edit the \src\styles\colors.js file to customize the color palette.

module.exports = {
  first: "#7F5D80",
  firstLight: "#CFC0CF",
  firstSuperLight: "#F4F0F4",
  firstDark: "#563E57",
  accent: "#FF6633",
  bright: "#ffffff",
  light: "#f3f3f3",
  middle: "#666666",
  dark: "#333333",
  superDark: "#111111"
};

Theme

Edit the \src\styles\theme.js file to customize colors of element.

const colors = require("./colors");

const theme = {
  navigator: {
    colors: {
      title: colors.firstSuperLight,
      subTitle: colors.bright,
      scrollTrack: colors.first,
      scrollThumb: colors.firstDark,
      linkHover: colors.bright,
      header: colors.firstSuperLight,
      asideItemActiveBorder: colors.accent
    },
    sizes: {
      asideWidth: "19em",
      maxWidth: "56em"
    },
    backgrounds: {
      wrapper: colors.first,
      asideItemActive: colors.firstDark
    }
  },
  post: {
    colors: {
      author: colors.middle,
      authorBorder: colors.firstLight,
      bold: colors.middle,
      blockquoteFrame: colors.light,
      copyright: colors.middle,
      link: colors.first,
      linkHover: colors.firstLight,
      meta: colors.middle,
      metaBorder: colors.first,
      text: colors.dark,
      title: colors.middle,
      subTitle: colors.superDark
    },
    backgrounds: {
      wrapper: colors.bright,
      meta: colors.light
    },
    sizes: {
      maxWidth: "50em"
    }
  },
  bottomBar: {
    colors: {
      link: colors.bright,
      icon: colors.firstSuperLight
    },
    backgrounds: {
      wrapper: colors.first,
      icon: colors.firstDark
    },
    sizes: {
      height: 44 //pixels
    }
  },
  topBar: {
    colors: {
      link: colors.bright,
      linkPost: colors.first
    },
    backgrounds: {
      wrapper: colors.firstLight,
      wrapperPost: colors.bright,
      icon: colors.accent
    },
    sizes: {
      height: 44 //pixels
    }
  },
  info: {
    colors: {
      text: colors.firstDark,
      link: colors.firstDark,
      linkHover: colors.first,
      btn: colors.bright
    },
    backgrounds: {
      wrapper: colors.firstLight,
      btn: colors.accent
    },
    sizes: {
      maxWidth: "40em"
    }
  },
  mediaQueryTresholds: {
    XL: "65em",
    L: "49em",
    M: "37em",
    S: "28em",
    XS: "21em"
  }
};

Webfonts

As mentioned StyledBlog does not use webfonts. If you need them, the simplest way is to use Google Fonts is through Typography.js. But instead installing Typography.js directly use gatsby-plugin-typography.

Remember to update body { font-family: ....} in the /src/styles/global.js file. Also remove import "normalize.css"; from /src/layouts/index.js, since Typography comes with its own normalize styles.

Posts

Blog content is located in /content/posts/ directory, in markdown files.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].