/jekyll-indieweb

A Jekyll quick start to getting up and going with the IndieWeb

Primary LanguageHTMLMIT LicenseMIT

Jekyll-IndieWeb

Welcome to Jekyll-Indieweb. The goal of this project was to provide someone without a web presence a quick and easy way to start using the basics of the Indieweb. It has now evolved into a formal Jekyll theme, with a companion repository for demonstrating how to use the theme (and eventually, include GitHub Actions and/or Netlify for deploy.)

Visit Steal This Repo if you would like a starter repository you can fork and customize while benefiting from improvements in this theme.

Motivation

I've followed along a few IndieWeb Camps and observed a few people new to both the indieweb as well as having their own web presence. I wanted to provide another option for those users to have a fairly simple method to easily get up and going with with a web site ready for indieweb and be able to dive in.

Installation

If you have never set up Jekyll or Ruby in your local environment, we recommend the Jekyll docs for installing on your platform.

We use the latest stable Ruby version for development

We also use Gulp for our build tool. Though Jekyll has support for Sass, we have opted to write plain CSS for 2019 browsers and let the tools backfill for compatibility. If you haven't worked with Gulp before, we recommend their getting started docs which includes a link to Node install steps

Clone the repository

git clone https://github.com/miklb/jekyll-indieweb.git

navigate to the directory

cd jekyll-indieweb

install the Jekyll dependencies

bundle install

install the Gulp dependencies

npm i

Gulpfile has two main tasks: build and watch

build does just that - builds the _site directory.

watch watches both assets/css/_inc directory to check for CSS changes as well as Jekyll file changes and rebuilds the appopriate files.

A note about the CSS All CSS is in the _inc directory is plain CSS. Current browser support for variables is strong, but we use PostCSS to fill in browser compatibility. PostCSS also compiles assets/css/_inc/main.css into assets/css/main.css. You should never need to edit assets/css/main.css file directly.

Note The Jekyll Gulp task replaces the need to use bundle exec jekyll serve. Instead, use gulp watch.

Reminder that this is a Jekyll theme, not a stand alone site.

We optimized the build tools in this project with three goals:

  • quick deploy.
  • provide an out-of-the-box experience when using the theme as is.
  • allow overriding main.css in the individual response site for event specific customizations.

When submitting a new Pull Request with CSS changes, make sure to edit a file in _inc and commit all file changes with your PR.

Contributing

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

History

2.0.0 beta initial release as a theme gem. 0.2.1 minor changes in preparation for 2.0 milestone 0.2 Initial Support for Micropub posts 0.1 Initial release

Credits

Inspiration for the general aesthetics came from the Jekyll Type theme

svg social icons on CodePen.

Pelle Wessman - for his work on Jekyll & IndieWeb, particularly Micropub

License

See the LICENSE file.