/xity-starter

A blog-ready 11ty starter based on PostCSS, width RSS feed and Native Elements!

Primary LanguageJavaScript

XITY Starter

A blog-ready 11ty starter based on PostCSS and Parcel, with a RSS feed and Native Elements.

Key features

📰 Integrated RSS Feed.

💅 PostCSS with PostCSS Preset Env and cssnano to enhance and clean your css.

🏅 No CSS or JS frameworks to remove. Just add what you need.

📝 Basic blog structure.

📦 Basic building with Parcel bundler.

🎚 Configuration file to set meta data and global settings.

🎨 Code highlights which you can disable with a flag.

⚡️ Superpowered HTML elements with Native Elements.

⚠️ Custom 404 page layout

🤖 Custom blog posts parser to create <figure> and wrap iframes

⚙️ Service Worker generated by eleventy-plugin-pwa

Preconfigured tools


Prerequisites

Usage

You can download the scaffolding to create a new project structure with one command:

npx degit https://github.com/equinusocio/xity-starter

This command will download the project to your current working directory and remove the .github and .vscode folders. After the project structure has been downloaded, you should install the required dependencies:

yarn install

Running the local development mode

This command will run parcel and the local server (with Browsersync) with auto reload.

yarn dev

Building the production version

To generate your static site/blog you can run the following command. It will prepare the content assets and run optimisations for a production release.

yarn build

Configurations

You can easily configure your site by changing the settings inside src/_data/config.json.

Here are the default settings you will get with this project structure:

{
  // Site name used as default site title
  "name": "Eleventy blog/site starter",

  // Short description used as default page description
  "shortDesc": "A starting point to make blogs and sites. It’s not a template.",

  // Default document language
  "lang": "en",

  // The default website base url
  "url": "localhost",

  // Social shares author username
  "authorHandle": "@equinusocio",

  // Social shares author name
  "authorName": "Mattia Astorino",

  // Tip payment url, if you want to monetize your site
  "paymentPointer": "$twitter.xrptipbot.com/equinusocio",

  // Code highlight theme, must reflect the file name inside /assets/css.
  // Remove to disable it
  "syntaxTheme": "prism-material-light.css",

  // CSS class applied to the "#" anchor elements inside headings
  "permalinkClass": "permalink",

  // CSS class applied to the iframes wrapper
  "iframesClass": "iframes-wrapper",

  // CSS class applied to highlighted code snippets
  "codeClass": "code-wrapper",

  // Filesystem folders. "blogdir" and "includes" must be relative to "src"
  "paths": {
    "src": "src",
    "blogdir": "blog",
    "includes": "components",
    "output": "dist"
  }
}