JekyllBlog

texture — Jekyll Blog Template

By samarsault

texture is a Jekyll theme for simple blogs, customized through the texture configuration key in _config.yml to set the title, tagline, social links, color schemes, and navigation.

Explore the design

Compare the page layouts and mobile experience. Open any screenshot for a closer look.

2 previews
Desktop homepage1 / 2
Desktop captureTop of page

Actual screenshot captured by the server browser.

All pages & views 2

Screenshots show visual appearance; interactive behavior may differ.

Recorded 2026-09-30View source

What stands out

A quick read of the recorded project description.

01

Centralized configuration of the title, tagline, date format, and social links through the texture key in _config.yml

02

Six built-in header color schemes: yellow, red, black, blue, green, and purple

03

A development-oriented texture picker for switching textures in real time, which must be disabled in production

04

Supports Disqus comments, Google Analytics, post excerpts, and a toggleable navigation bar

05

Provides three layouts: Home, Page, and Post

06

Supports installation via remote_theme on GitHub Pages or as a gem

Template Details

texture is a Jekyll blog theme positioned as a "configurable simple blog." It centralizes site information and appearance through the texture key in _config.yml, including the title, tagline, date format, and social links (Twitter, GitHub, LinkedIn). The theme includes multiple header color schemes that can be switched among yellow, red, black, blue, green, and purple; it also provides a development-oriented texture picker that toggles different textures on the page via the showPicker switch, and the README notes that it should be set to false in production.

In terms of features, the theme supports Disqus comments (by filling in disqus_shortname), Google Analytics (by filling in analytics_id), post excerpts (show_excerpts), and a toggleable navigation bar (showNav), with navigation items configured as a list of title and url pairs. The theme provides three layouts: Home, Page, and Post.

There are two installation methods: use remote_theme: samarsault/texture on GitHub Pages; or install as a gem by adding gem "texture" to the Gemfile, setting theme: texture in _config.yml, and then running bundle or gem install texture. The README specifically warns that if you fork the repository, you need to remove base_url: /texture from _config.yml, otherwise asset loading will be affected.

Regarding licensing, the repository uses the MIT license, allowing free use, modification, commercial use, and distribution of this version of the code, provided the copyright notice and license notice are retained when distributing; however, third-party assets such as demo images, fonts, and icons need to be checked separately under their respective licenses, and external services such as domains and hosting may also incur separate charges.

JekyllBlog

Is it right for your project?

Use Cases

  • Building a personal technical blog or writing blog
  • Quickly deploying a Jekyll site on GitHub Pages
  • A lightweight blog that organizes content by post list and detail pages
  • Adjusting site appearance through configuration files rather than code changes

Suitable For

  • Developers using Jekyll who want to customize a blog through configuration
  • Users hosting static blogs on GitHub Pages
  • Writers who prefer simple typography and do not need complex feature modules

Getting started & customization

Use these recorded setup notes alongside the repository instructions for your chosen version.

  1. 1

    GitHub Pages method: add remote_theme: samarsault/texture to _config.yml

  2. 2

    Gem method: add gem "texture" to the Gemfile, set theme: texture in _config.yml, then run bundle or gem install texture

  3. 3

    When forking the repository, remove base_url: /texture from _config.yml, otherwise assets will not load properly

  4. 4

    During development, use showPicker to switch textures; set it to false before going live

  5. 5

    For local development, run bundle install and then bundle exec jekyll serve, and visit http://localhost:4000

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

This entry covers the free version under the MIT license in the public repository; the free scope is the code of this version and does not mean that external services or third-party assets are free.

Must comply with when using

  • Free use, modification, commercial use, and distribution of this version of the code are permitted.
  • When distributing copies or substantial portions of the code, retain the original author's copyright notice and the complete MIT license notice.
  • The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.

Additional costs & items to verify

  • Enabling post comments requires filling in a Disqus shortname; the comment feature depends on Disqus, a third-party external service, and may require account registration and is subject to its terms of service.
  • Enabling visit statistics requires filling in a Google Analytics ID; this feature depends on Google's external service, may require an account, and is subject to its terms and privacy policy.
  • The development-oriented texture picker requires setting showPicker to false in production, otherwise the site will retain the texture switching control.
  • If you fork the repository, you must remove base_url: /texture from _config.yml, otherwise site assets will not load properly.
  • Demo images, fonts, icons, and other third-party assets must be checked under their respective licenses and cannot be judged solely by the code's MIT license.
  • External services such as domains, hosting, databases, payments, or AI may incur separate charges.
View Original Text Basis

Permission is hereby granted, free of charge

Original License Text

Comments on posts can be enabled by specifying your disqus_shortname

Original README

It can be enabled by specifying your analytics id

Original README

Remember to make it `false` for production.

Original README

remove `base_url: /texture` in the `_config.yml`

Original README
https://github.com/samarsault/texture/blob/master/LICENSE.txthttps://github.com/samarsault/texture/blob/master/README.md

Compiled by DeepSeek based on repository license and README ·2026-10-01. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.

Project checks & description sources

Template Information

Source platforms
GitHub
Documentation and maintenance reference score
More documented · 76 / 100
Technologies
Jekyll
Website type
Blog
How this score is calculated

Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.

What to verify for this project

Repository update recorded
2024-07-01
Screenshot last checked
2026-10-01

A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.

The catalog identifies Jekyll as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.

Use a selection guide →

How this description was prepared

AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.

Automatically checked against source and license rules; no manual editorial review.

Inspect the recorded source material

SHA-256: 0b15f34647ff2969bfbc8ade0f58bcf1016697e3e8f8827f2a0171131d8e511c

2026-10-01T15:08:41.266Z

Source file / repository
# texture

A configurable jekyll theme for simply beautiful blogs.

**Demo**: [samarsault.com/texture](https://samarsault.com/texture)

![texture theme preview](/screen1.png)


## Installation on Github Pages

Add this line to your site's `_config.yml`:
```yaml
remote_theme: samarsault/texture
```

**NOTE: If you are forking this repo, remove `base_url: /texture` in the `_config.yml` which is required to load the required website assets**
## Installation

Add this line to your Jekyll site's `Gemfile`:

```ruby
gem "texture"
```

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

```yaml
theme: texture
```

And then execute:

    $ bundle

Or install it yourself as:

    $ gem install texture

## Usage

The "texture" key in _config.yml is used to customize the theme data.
```yaml
texture:
  title: Adam Denisov
  tagline: Developer. Designer
  date_format: "%b %-d, %Y"

  social_links:
    twitter: thelehhman
    github:  thelehhman
    linkedIn: in/thelehhman # format: locale/username
```

**Styling**

Multiple header styles are supported using the "style" property under texture in `_config.yml`.

```yaml
texture:
  style: [yellow|red|black|blue|green|purple]
```

For example, the blue style looks like this:

![texture theme blue](/screen2.png)


**Texture Picker**

You can toggle the texture picker to show/experiment various textures on your site using the showPicker variable. Remember to make it `false` for production.

```yaml
texture:
  showPicker: [false|true] # show the texture selector(development purposes)
```

**Comments (Disqus)**

Comments on posts can be enabled by specifying your disqus_shortname under texture in `_config.yml`. For example,
```yaml
texture:
  disqus_shortname: games
```

**Google Analytics**

It can be enabled by specifying your analytics id under texture in `_config.yml`
```yaml
texture:
  analytics_id: '< YOUR ID >'
```

**Excerpts**

Excerpts can be enabled by adding the following line to your `_config.yml`
```yaml
show_excerpts: true
```

**Toggle Navbar**

```yaml
texture:
  showNav: true
```

**Navigation**

After setting `showNav` to true navigation can be built by adding the following to your `_config.yml`

```yaml
texture:
  navigation:
    - title: My Work
      url: "/my-work"
    - title: Resume
      url: "/resume"
```

**Layouts**

- Home
- Page
- Post

## Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/samarsault/texture. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.

## 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 `texture.gemspec` accordingly.

## Donation
If this project help you reduce time to develop, you can give me a cup of coffee :) 

[![paypal](https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif)](https://paypal.me/thelehhman)

## License

The theme is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).

## More Themes
[plainwhite](https://github.com/samarsault/plainwhite-jekyll)
Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.