# ouzhoucheng **Repository Path**: Wind_to_valley/ouzhoucheng ## Basic Information - **Project Name**: ouzhoucheng - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-11-11 - **Last Updated**: 2024-06-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Not Pure Poole Jekyll Themes Shield **Not Pure Poole** is a simple, beautiful, and powerful Jekyll theme for blogs. It is built on [Poole](https://github.com/poole/poole) and [Pure](https://purecss.io/). > Poole explains that Jekyll has been asking for a particular chemical for days now but every time it has been fetched for him he rejects it as **not pure**. Poole also explains that he caught a glimpse of the man inside and he looked barely human. > > -- The death of Jekyll ----- See Not Pure Poole in action with [the demo site](https://vszhub.github.io/not-pure-poole/). ![Screenshot](screenshot.png) ## Table of Contents - [Features](#features) - [Installation](#installation) - [Usage](#usage) - [Configuration](#configuration) - [Customizing Head](#customizing-head) - [Creating Themes](#creating-themes) - [Customizing Navigation](#customizing-navigation) - [Customizing Cover Image](#customizing-cover-image) - [Customizing Social Links](#customizing-social-links) - [Enabling Posts Archive](#enabling-posts-archive) - [Enabling TOC](#enabling-toc) - [Enabling MathJax](#enabling-mathjax) - [Something More](#something-more) - [Development](#development) - [License](#license) ## Features - [Jekyll SEO Tag](https://github.com/jekyll/jekyll-seo-tag) - [Jekyll Feed](https://github.com/jekyll/jekyll-feed) - [Jekyll Sitemap](https://github.com/jekyll/jekyll-sitemap) - [Jekyll Gist](https://github.com/jekyll/jekyll-gist) - [Google Analytics](https://analytics.google.com/) - [Disqus](https://disqus.com/) - [Font Awesome](https://fontawesome.com/) - [MathJax](https://www.mathjax.org/) - Dark mode (enabled automatically via CSS media query) - Posts archive by dates, categories, and tags - Pagination, generated by [Jekyll Paginate](https://github.com/jekyll/jekyll-paginate) - TOC (generated by Vladimir "allejo" Jimenez's [jekyll-toc](https://github.com/allejo/jekyll-toc)) - Related posts (time-based, because Jekyll) below each post - Mobile friendly design and development - Easily scalable text and component sizing with `rem` units in the CSS - Support for a wide gamut of HTML elements - Syntax highlighting, courtesy Pygments (the Python-based code snippet highlighter) ## Installation You can choose one of the following methods to install Not Pure Poole: - Directly specify the `not-pure-poole` gem. 1. Add `gem 'not-pure-poole'` into your `Gemfile`. 2. Add the below lines into your `_config.yml`. ```yml plugins: - not-pure-poole ``` - If your site is hosted on GitHub Pages, you can use [`jekyll-remote-theme`](https://github.com/benbalter/jekyll-remote-theme) to import the master branch of Not Pure Poole. 1. Add `gem 'jekyll-remote-theme'` into your `Gemfile`. 2. Add the below lines into your `_config.yml`. ```yml plugins: - jekyll-remote-theme remote_theme: vszhub/not-pure-poole ``` ## Usage You can read this [example post](https://vszhub.github.io/not-pure-poole/2020/09/29/welcome-to-not-pure-poole/) to see the rendering result in this theme, and put the [source](_posts/2020-09-29-welcome-to-not-pure-poole.md) aside to learn some basic usages. ### Configuration The [`_config.yml`](_config.yml) file in this repository already contains some variables, you can try to override them in your repository. ### Customizing Head Not Pure Poole leaves a placeholder to allow defining custom head, in principle, you can add anything here, e.g. favicons. All you need to do is just creating a file `_includes/custom-head.html` and put data into it. ### Creating Themes If you want to make your own color schemes, modify the CSS variables in the `_sass/_variables.scss` stylesheet with a scoped data attribute or class name. For example, below we've created the beginnings of a blue theme: ```scss // Example blue theme [data-theme="blue"] { --body-bg: var(--blue); --body-color: #fff; } ``` Then, apply the theme by adding `data-theme="blue"` to the `` element. ### Customizing Navigation You can create a file `_data/navigation.yml` to configure links to some pages. For example, ```yml - title: Blog url: / - title: About url: /about/ ``` ### Customizing Cover Image You can set your own cover image by modifying the `cover_image` variable in `_config.yml`, and you can also set different cover images on different pages by setting the `cover_image` variable on each page. If you discover that the contrast between the cover text color and the cover background color is not enough, you can also adjust these two variables: ```yml cover_bg_color: rgb(40, 73, 77) cover_color: rgb(255, 255, 255) ``` ### Customizing Social Links You can set your social links in `_data/social.yml`. You can custom titles, URLs, and icons (only support [Font Awesome](https://fontawesome.com/) currently), for example: ```yml - title: Email url: mailto://vszhub@gmail.com icon: fas fa-envelope - title: Twitter url: https://twitter.com/vszhub icon: fab fa-twitter - title: GitHub url: https://github.com/vszhub/not-pure-poole icon: fab fa-github ``` ### Enabling Posts Archive Not Pure Poole supports posts archive by date, categories, and tags. For enabling that, you should put some data like below into `_data/archive.yml`: ```yml - type: dates title: Dates url: /dates/ - type: categories title: Categories url: /categories/ - type: tags title: Tags url: /tags/ ``` After that, the navigation to these archive pages would be shown on the top of the homepage. Then, you can create a category archive page, and set the below parameters on that page: ```yml --- layout: archive-taxonomies type: categories --- ``` Or a tag archive page: ```yml layout: archive-taxonomies type: tags ``` Or archive by dates: ```yml layout: archive-dates ``` ### Enabling TOC If you want to show the TOC of a page on the right side, just set `toc: true` on that page. ### Enabling MathJax If you want to write mathematics on a page, just set `math: true` on that page to enable MathJax. ### Something More Just **hack** into the code and see what you can get. ## Development To set up your environment to develop this theme, run `bundle install`. Your theme is setup just like a normal Jekyll site! To test your theme, run `bundle exec jekyll serve` and open your browser at `http://localhost:4000`. This starts a Jekyll server using your theme. Add pages, documents, data, etc. like normal to test your theme's contents. As you make modifications to your theme and to your content, your site will regenerate and you should see the changes in the browser after a refresh, just like normal. When your theme is released, only the files in `_layouts`, `_includes`, `_sass` and `assets` tracked with Git will be bundled. To add a custom directory to your theme-gem, please edit the regexp in `not-pure-poole.gemspec` accordingly. ## License The theme is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).