Skip to content

Lumen is a minimal, lightweight and mobile-first starter for creating blogs using Gatsby and Kentico Kontent.

License

Notifications You must be signed in to change notification settings

Simply007/gatsby-starter-kontent-lumen

Repository files navigation

Gatsby Starter Kontent Lumen

GitHub license Stack Overflow Live demo

Netlify Status

Lumen is a minimal, lightweight and mobile-first starter for creating blogs using Gatsby.

This is an edited clone of gatsby-starter-lumen and gatsby-v2-starter-lumen migrated for getting content from headless CMS Kontent.

Page Screenshot

Features

  • Content from Kontent headless CMS.
  • Lost Grid (peterramsing/lost).
  • Beautiful typography inspired by matejlatin/Gutenberg.
  • Mobile-First approach in development.
  • Stylesheet built using SASS and BEM-Style naming.
  • Syntax highlighting in code blocks.
  • Sidebar menu built using a configuration block.
  • Archive organized by tags and categories.
  • Automatic Sitemap generation.
  • Google Analytics support.

Getting Started

Requirements

Create codebase

  1. Click on "Use this repository" button to create your own repository from this template.

Create content source

  1. Go to app.kontent.ai and create empty project

  2. Go to "Project Settings", select API keys and copy

    • Project ID
    • Management API key require Bussines tier or higher or Trial account
  3. Install Kontent Backup Manager and import data to newly created project from kontent-backup.zip file (place appropriate values for apiKey and projectId arguments):

    npm i -g @kentico/kontent-backup-manager
    
    kbm --action=restore --apiKey=<Management API key> --projectId=<Project ID> --zipFilename=kontent-backup

    Alternatively, you can use the Template Manager UI for importing the content.

  4. Go to your Kontent project and publish all the imported items.

Join codebase and content data

Copy .env.template and name it .env then set the KONTENT_PROJECT_ID environment variable to value from Kontent -> "Project Settings" -> API keys -> Project ID.

This step is made automatically when running npm install - it is defined as a prepare script in package.json.

You are now ready to use the site as your own!

Development

Install the dependencies and run development environment

npm install  // Also creates a .env file from .env.template file if no .env file exists
npm run develop

Site production build

Install the dependencies and run production build

npm install // Also creates a .env file from .env.template file if no .env file exists
npm run build

Production Deploy

Before deploying to production add own google analytics trackingId to [gatsby-config.js].

Deploy with Netlify

Netlify CMS can run in any frontend web environment, but the quickest way to try it out is by running it on a pre-configured starter site with Netlify. Use the button below to build and deploy your own copy of the repository:

Deploy to Netlify

After clicking that button, you’ll authenticate with GitHub and choose a repository name. Netlify will then automatically create a repository in your GitHub account with a copy of the files from the template. Next, it will build and deploy the new site on Netlify, bringing you to the site dashboard when the build is complete. Next, you’ll need to set up Netlify’s Identity service to authorize users to log in to the CMS.

Folder Structure

└── src
    ├── assets
    │   ├── fonts
    │   │   └── fontello-771c82e0
    │   │       ├── css
    │   │       └── font
    │   └── scss
    │       ├── base
    │       ├── mixins
    │       └── pages
    ├── components
    │   ├── Article
    │   ├── ArticleTemplateDetails
    │   ├── CategoryTemplateDetails
    │   ├── Links
    │   ├── Layout
    │   ├── Menu
    │   ├── PageTemplateDetails
    │   ├── Sidebar
    │   └── TagTemplateDetails
    ├── pages
    └── templates

Analytics

About

Lumen is a minimal, lightweight and mobile-first starter for creating blogs using Gatsby and Kentico Kontent.

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published