Giter Club home page Giter Club logo

my-blog's Introduction

The Cayman Blog theme

Build Status Gem Version

Cayman Blog is a Jekyll theme for GitHub Pages. It is based on the nice Cayman theme, with blogging features added. You can preview the theme to see what it looks like, or even use it today.

Thumbnail of cayman-blog Thumbnail of cayman-blog for mobile

Install

Cayman Blog Theme has been developed as a Jekyll theme gem for easier use. It is also 100% compatible with GitHub Pages — just with a more involved installation process according to whether you’re running Jekyll v3.3+ and self-hosting, or if you’re hosting with GitHub Pages.

Self hosting

If you’re running Jekyll v3.3+ and self-hosting you can quickly install the theme as Ruby gem:

  1. Add this line to your Jekyll site’s Gemfile:

    gem "jekyll-theme-cayman-blog"
    
  2. Add this line to your Jekyll site’s _config.yml file:

    theme: jekyll-theme-cayman-blog
    
  3. Then run Bundler to install the theme gem and dependencies:

    script/bootstrap
    

Hosting with GitHub Pages

If you’re hosting your blog with GitHub Pages you’ll have to consider this:

⚠️ As stated in the official Jekyll documentation:

If you’re publishing your Jekyll site on GitHub Pages, note that GitHub Pages supports only some gem-based themes. See Supported Themes in GitHub’s documentation to see which themes are supported.

Therefore, this theme, as well as many others, can not be installed in the same way as the ones officially supported by GitHub Pages (e.g. Cayman, Minima), a bit more effort has to be put on.

The easiest way I found to install Cayman Blog Theme, is installing the theme gem, and then converting the gem-based theme to regular theme.

Alternatively, for new projects, one could fork the whole theme, and keep only the interesting files.

Gem Install

This method is preferred for existing Jekyll blogs, as well as newly created ones. Notice that the files index.md, about.md, contact.md will be overwritten (only index.md is really needed, the other two are just placeholders).

  1. Install the theme gem: $ gem install jekyll-theme-cayman-blog

  2. Run $ gem env gemdir to know where the gem was installed

  3. Open the folder shown in the output

  4. Open the folder gems

  5. Open the theme folder (e.g. jekyll-theme-cayman-blog-0.0.5)

  6. Copy all the files into your newly created or existing blog folder

  7. Leave empty theme your site's _config.yml:

    theme:
  8. Modify _config.yml, about.md, contact.md for your project

  9. Customize the theme

Install as a Fork

  1. Fork the repo
  2. Clone down the repo with $ git clone [email protected]:username/reponame.git
  3. Delete the screenshot.png and screenshot-mobile.png files
  4. Empty the _posts folder
  5. Install bundler and gems with $ script/bootstrap
  6. Run Jekyll with $ script/server
  7. Modify _config.yml, about.md, contact.md for your project
  8. Customize the theme

Customizing

Configuration variables

Cayman Blog will respect the following variables, if set in your site's _config.yml:

title: [The title of your site]
description: [A short description of your site's purpose]

Additionally, you may choose to set the following optional variables:

show_downloads: ["true" or "false" to indicate whether to provide a download URL]
google_analytics: [Your Google Analytics tracking ID]

RSS feeds

To enable RSS feeds and also make visible an RSS feeds button in the footer, the Jekyll Feed plugin must be installed.

Add this line to your site's Gemfile:

gem 'jekyll-feed'

And then add this line to your site's _config.yml:

gems:
  - jekyll-feed

For more information about configuring this plugin, see the official Jekyll Feed plugin page.

SEO tags

Cayman Blog includes simple SEO tags from jekyll-social-metatags. Have a look at the page for its usage.

The usage is compatible with the plugin Jekyll SEO Tag, which provides a battle-tested template of crowdsourced best-practices.

To switch to a better SEO tags however, one should install Jekyll Feed plugin:

  1. Add this line to your site's Gemfile:

    gem 'jekyll-seo-tag'
  2. And then add this line to your site's _config.yml:

    gems:
      - jekyll-seo-tag
  3. Replace with the following, the <!-- jekyll-seo-tag --> comment in your site's default.html:

    {% seo %}

For more information about configuring this plugin, see the official Jekyll SEO Tag page.

Stylesheet

If you'd like to add your own custom styles:

  1. Create a file called /assets/css/style.scss in your site
  2. Add the following content to the top of the file, exactly as shown:
    ---
    ---
    
    @import "{{ site.theme }}";
  3. Add any custom CSS (or Sass, including imports) you'd like immediately after the @import line

Layouts

If you'd like to change the theme's HTML layout:

  1. Copy the original template from the theme's repository
    (Pro-tip: click "raw" to make copying easier)
  2. Create a file called /_layouts/default.html in your site
  3. Paste the default layout content copied in the first step
  4. Customize the layout as you'd like

Sass variables

If you'd like to change the theme's Sass variables, set new values before the @import line in your stylesheet:

$section-headings-color: #0086b3;

@import "{{ site.theme }}";

Roadmap

See the open issues for a list of proposed features (and known issues).

Project philosophy

The Cayman Blog theme is intended to make it quick and easy for GitHub Pages users to create their first (or 100th) website. The theme should meet the vast majority of users' needs out of the box, erring on the side of simplicity rather than flexibility, and provide users the opportunity to opt-in to additional complexity if they have specific needs or wish to further customize their experience (such as adding custom CSS or modifying the default layout). It should also look great, but that goes without saying.

Contributing

Interested in contributing to Cayman Blog? We'd love your help. Cayman Blog is an open source project, built one contribution at a time by users like you. See the CONTRIBUTING file for instructions on how to contribute.

Previewing the theme locally

If you'd like to preview the theme locally (for example, in the process of proposing a change):

  1. Clone down the theme's repository (git clone https://github.com/lorepirri/cayman-blog)
  2. cd into the theme's directory
  3. Run script/bootstrap to install the necessary dependencies
  4. Run script/server to start the preview server
  5. Visit localhost:4000 in your browser to preview the theme

Running tests

The theme contains a minimal test suite, to ensure a site with the theme would build successfully. To run the tests, simply run script/cibuild. You'll need to run script/bootstrap one before the test script will work.

my-blog's People

Contributors

lorepirri avatar sfraguor avatar benbalter avatar jasonlong avatar vis-kid avatar antibland avatar konklone avatar stoicsleuth avatar ethertyper avatar iksaku avatar jldec avatar sethjackson avatar thomas-hiron avatar msound avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.