{"id":13405839,"url":"https://github.com/mmistakes/jekyll-theme-basically-basic","last_synced_at":"2025-05-14T09:07:41.348Z","repository":{"id":37251764,"uuid":"84246188","full_name":"mmistakes/jekyll-theme-basically-basic","owner":"mmistakes","description":"Your new Jekyll default theme.","archived":false,"fork":false,"pushed_at":"2024-08-09T21:56:19.000Z","size":2276,"stargazers_count":874,"open_issues_count":12,"forks_count":1230,"subscribers_count":11,"default_branch":"master","last_synced_at":"2025-04-01T23:20:48.732Z","etag":null,"topics":["algolia","algolia-search","github-pages","jekyll","jekyll-theme","lunr","ruby-gem","search","theme"],"latest_commit_sha":null,"homepage":"https://mmistakes.github.io/jekyll-theme-basically-basic/","language":"SCSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mmistakes.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"mmistakes","custom":["https://www.paypal.me/mmistakes"]}},"created_at":"2017-03-07T21:08:01.000Z","updated_at":"2025-03-29T19:58:54.000Z","dependencies_parsed_at":"2023-02-18T01:00:27.601Z","dependency_job_id":"caa090f7-5a43-4105-bb28-74992e4e7c21","html_url":"https://github.com/mmistakes/jekyll-theme-basically-basic","commit_stats":{"total_commits":248,"total_committers":15,"mean_commits":"16.533333333333335","dds":0.2016129032258065,"last_synced_commit":"cda809277a7ee90ceec1955225adb79c94e1e7eb"},"previous_names":[],"tags_count":15,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmistakes%2Fjekyll-theme-basically-basic","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmistakes%2Fjekyll-theme-basically-basic/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmistakes%2Fjekyll-theme-basically-basic/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmistakes%2Fjekyll-theme-basically-basic/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mmistakes","download_url":"https://codeload.github.com/mmistakes/jekyll-theme-basically-basic/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247949445,"owners_count":21023324,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["algolia","algolia-search","github-pages","jekyll","jekyll-theme","lunr","ruby-gem","search","theme"],"created_at":"2024-07-30T19:02:13.379Z","updated_at":"2025-04-09T00:29:56.639Z","avatar_url":"https://github.com/mmistakes.png","language":"SCSS","readme":"# [Basically Basic Jekyll Theme][1]\n\n[![LICENSE](https://img.shields.io/badge/license-MIT-lightgrey.svg)](https://github.com/mmistakes/jekyll-theme-basically-basic/blob/master/LICENSE)\n[![Jekyll](https://img.shields.io/badge/jekyll-%3E%3D%203.6-blue.svg)](https://jekyllrb.com/)\n\nBasically Basic is a [Jekyll theme](https://jekyllrb.com/docs/themes/) meant as \na substitute for the default [Minima](https://github.com/jekyll/minima), with a \nfew enhancements thrown in for good measure:\n\n- Clean responsive design with [six customizable skins](#skin)\n- Curriculum Vitæ/Resume layout powered by [JSON data](http://registry.jsonresume.org/)\n- About page layout\n- Site-wide search provided by [Algolia](https://www.algolia.com/) or [Lunr](https://lunrjs.com/).\n- Disqus Comments and Google Analytics support\n- SEO best practices via [Jekyll SEO Tag](https://github.com/jekyll/jekyll-seo-tag/)\n\n[![Basically Basic live preview][2]][1]\n\n[1]: https://mmistakes.github.io/jekyll-theme-basically-basic/\n[2]: https://cloud.githubusercontent.com/assets/1376749/24117647/6dede894-0d81-11e7-9c2c-f19bea45e219.jpg (live preview)\n\n## Installation\n\nIf you're running Jekyll v3.5+ and self-hosting you can quickly install the \ntheme as a Ruby gem. If you're hosting with GitHub Pages you can install as a \nremote theme or directly copy all of the theme files (see [structure](#structure) \nbelow) into your project.\n\n### Ruby Gem Method\n\n1. Add this line to your Jekyll site's `Gemfile`:\n\n   ```ruby\n   gem \"jekyll-theme-basically-basic\"\n   ```\n2. Add this line to your Jekyll site's `_config.yml` file:\n\n   ```yaml\n   theme: jekyll-theme-basically-basic\n   ```\n\n2. Then run [Bundler](http://bundler.io/) to install the theme gem and dependencies:\n   \n   ```terminal\n   bundle install\n   ```\n\n### GitHub Pages Method\n\nGitHub Pages has added [full support](https://github.com/blog/2464-use-any-theme-with-github-pages) \nfor any GitHub-hosted theme.\n\n1. Replace `gem \"jekyll\"` with:\n\n   ```ruby\n   gem \"github-pages\", group: :jekyll_plugins\n   ```\n\n2. Run `bundle update` and verify that all gems install properly.\n\n3. Add `remote_theme: \"mmistakes/jekyll-theme-basically-basic@1.4.5\"` to your \n   `_config.yml` file. Remove any other `theme:` or `remote_theme:` entries.\n\n---\n\n**Note:** Your Jekyll site should be viewable immediately at \n\u003chttp://USERNAME.github.io\u003e. If it's not, you can force a rebuild by \n**Customizing Your Site** (see below for more details).\n\nIf you're hosting several Jekyll based sites under the same GitHub username you \nwill have to use Project Pages instead of User Pages. Essentially you rename the \nrepo to something other than **USERNAME.github.io** and create a `gh-pages` \nbranch off of `master`. For more details on how to set things up check \n[GitHub's documentation](https://help.github.com/articles/user-organization-and-project-pages/).\n\n#### Remove the Unnecessary\n\nIf you forked or downloaded the `jekyll-theme-basically-basic` repo you can \nsafely remove the following files and folders:\n\n- `.editorconfig`\n- `.gitattributes`\n- `.github`\n- `.scss-lint.yml`\n- `CHANGELOG.md`\n- `jekyll-theme-basically-basic.gemspec`\n- `LICENSE`\n- `Rakefile`\n- `README.md`\n- `screenshot.png`\n- `/docs`\n- `/example`\n\n## Upgrading\n\nIf you're using the Ruby Gem or remote theme versions of Basically Basic, \nupgrading is fairly painless.\n\nTo check which version you are currently using, view the source of your built \nsite and you should something similar to:\n\n```\n\u003c!--\n    Basically Basic Jekyll Theme 1.4.5\n    Copyright 2017-2018 Michael Rose - mademistakes.com | @mmistakes\n    Free for personal and commercial use under the MIT license\n    https://github.com/mmistakes/jekyll-basically-theme/blob/master/LICENSE\n--\u003e\n```\n\nAt the top of every `.html` file, `/assets/css/main.css`, and `/assets/js/main.js`.\n\n### Ruby Gem\n\nSimply run `bundle update` if you're using Bundler (have a `Gemfile`) or `gem \nupdate jekyll-theme-basically-basic` if you're not.\n\n### Remote Theme\n\nVerify you have the [latest version](https://github.com/mmistakes/jekyll-theme-basically-basic/releases) assigned in `_config.yml`\n\n```\nremote_theme: \"mmistakes/jekyll-theme-basically-basic@1.4.5\"\n```\n\nNote: If `@x.x.x` is omitted the theme's current `master` branch will be used. It is advised to [\"lock\" `remote_theme`](https://github.com/benbalter/jekyll-remote-theme#declaring-your-theme) at a specific version to avoid introducing breaking changes to your site.\n\nThe next step requires rebuilding your [GitHub Pages](https://pages.github.com/) site so it can pull down the latest theme updates. This can be achieved by pushing up a commit to your GitHub repo.\n\nAn empty commit will get the job done too if you don't have anything to push at the moment:\n\n```terminal\ngit commit --allow-empty -m \"Force rebuild of site\"\n```\n\n### Use Git\n\nIf you want to get the most out of the Jekyll + GitHub Pages workflow, then \nyou'll need to utilize Git. To pull down theme updates you must first ensure \nthere's an upstream remote. If you forked the theme's repo then you're likely \ngood to go.\n\nTo double check, run `git remote -v` and verify that you can fetch from `origin https://github.com/mmistakes/jekyll-theme-basically-basic.git`.\n\nTo add it you can do the following:\n\n```terminal\ngit remote add upstream https://github.com/mmistakes/jekyll-theme-basically-basic.git\n```\n\n#### Pull Down Updates\n\nNow you can pull any commits made to theme's `master` branch with:\n\n```terminal\ngit pull upstream master\n```\n\nDepending on the amount of customizations you've made after forking, there's \nlikely to be merge conflicts. Work through any conflicting files Git flags, \nstaging the changes you wish to keep, and then commit them.\n\n### Update Files Manually\n\nAnother way of dealing with updates is [downloading the theme](https://github.com/mmistakes/jekyll-theme-basically-basic/archive/master.zip) \n--- replacing your layouts, includes, and assets with the newer ones manually. \nTo be sure that you don't miss any changes it's probably a good idea to review \nthe theme's [commit history](https://github.com/mmistakes/jekyll-theme-basically-basic/commits/master) \nto see what's changed since.\n\nHere's a quick checklist of the important folders/files you'll want to be \nmindful of:\n\n| Name                   |     |\n| ----                   | --- |\n| `_layouts`             | Replace all. Apply edits if you customized any layouts. |\n| `_includes`            | Replace all. Apply edits if you customized any includes. |\n| `assets`               | Replace all. Apply edits if you customized stylesheets or scripts. |\n| `_sass`                | Replace all. Apply edits if you customized Sass partials. |\n| `_data/theme.yml`      | Safe to keep. Verify that there were no major structural changes or additions. |\n| `_config.yml`          | Safe to keep. Verify that there were no major structural changes or additions. |\n\n---\n\n**Note:** If you're not seeing the latest version, be sure to flush browser and \nCDN caches. Depending on your hosting environment older versions of \n`/assets/css/main.css`, `/assets/js/main.js`, or `*.html` may be cached.\n\n## Structure\n\nLayouts, includes, Sass partials, and data files are all placed in their default \nlocations. Stylesheets and scripts in `assets`, and a few development related \nfiles in the project's root directory.\n\n**Please note:** If you installed Basically Basic via the Ruby Gem method, theme \nfiles found in `/_layouts`, `/_includes`, `/_sass`, and `/assets` will be \nmissing. This is normal as they are bundled with the [`jekyll-theme-basically-basic`](https://rubygems.org/gems/jekyll-theme-basically-basic) gem.\n\n```terminal\njekyll-theme-basically-basic\n├── _data                      # data files\n|  └── theme.yml               # theme settings and custom text\n├── _includes                  # theme includes and SVG icons\n├── _layouts                   # theme layouts (see below for details)\n├── _sass                      # Sass partials\n├── assets\n|  ├── javascripts\n|  |  └── main.js\n|  └── stylesheets\n|     └── main.scss\n├── _config.yml                # sample configuration\n└── index.md                   # sample home page (all posts/not paginated)\n```\n\n### Starting Fresh\n\nAfter creating a `Gemfile` and installing the theme you'll need to add and edit \nthe following files:\n\n- [`_config.yml`](_config.yml)\n- [`/_data/theme.yml`](_data/theme.yml)\n- [`index.md`](index.md) \n\n**Note:** Consult the [**pagination**](#pagination) documentation below for\ninstructions on how to enable it for the home page.\n\n### Starting from `jekyll new`\n\nUsing the `jekyll new` command will get you up and running the quickest.\n\nEdit `_config.yml` and create `_data/theme.yml` as instructed above and you're \ngood to go.\n\n## Configuration\n\nConfiguration of site-wide elements (`lang`, `title`, `description`, `logo`, \n`author`, etc.) happens in your project's `_config.yml`. See the \n[example configuration](example/_config.yml) in this repo for additional \nreference.\n\n|                    | Description                                                               |\n| ------------------ | ------------------------------------------------------------------------- |\n| `lang`             | Used to indicate the language of text (e.g., en-US, en-GB, fr)            |\n| `title`            | Your site's title (e.g., Dungan's Awesome Site)                           |\n| `description`      | Short site description (e.g., A blog about grasshopper mash)              |\n| `url`              | The full URL to your site (e.g., https://groverloaf.org)                  |\n| `author`           | Global author information (see below)                                     |\n| `logo`             | Path to a site-wide logo ~100x100px (e.g., /assets/your-company-logo.png) |\n| `twitter_username` | Site-wide Twitter username, used as a link in sidebar                     |\n| `github_username`  | Site-wide GitHub username, used as a link in sidebar                      |\n\nFor more configuration options be sure to consult the documentation for: \n[**jekyll-seo-tag**][jekyll-seo-tag], [**jekyll-feed**][jekyll-feed], \n[**jekyll-paginate**][jekyll-paginate], and [**jekyll-sitemap**][jekyll-sitemap].\n\n[jekyll-seo-tag]: https://github.com/jekyll/jekyll-seo-tag\n[jekyll-feed]: https://github.com/jekyll/jekyll-feed\n[jekyll-paginate]: https://github.com/jekyll/jekyll-paginate\n[jekyll-sitemap]: https://github.com/jekyll/jekyll-sitemap\n\n### Skin\n\nThis theme comes in six different skins (color variations). To change skins add \none of the following to your [`/_data/theme.yml`](_data/theme.yml) file:\n\n| `skin: default` | `skin: night` | `skin: plum` |\n| --- | --- | --- |\n| ![default-skin](https://cloud.githubusercontent.com/assets/1376749/24115744/c0618c90-0d7a-11e7-8e2d-ec70f9db0c1b.png) | ![night-skin](https://cloud.githubusercontent.com/assets/1376749/24115770/d61127f8-0d7a-11e7-9158-986bee2be8e7.png) | ![plum-skin](https://cloud.githubusercontent.com/assets/1376749/24115778/db523a0e-0d7a-11e7-9452-8692b736d67e.png) |\n\n| `skin: sea` | `skin: soft` | `skin: steel` |\n| --- | --- | --- |\n| ![sea-skin](https://cloud.githubusercontent.com/assets/1376749/24115788/e27d818a-0d7a-11e7-8c56-2480e9ae83fb.png) | ![soft-skin](https://cloud.githubusercontent.com/assets/1376749/24115790/e6e548e8-0d7a-11e7-8e2d-d8053e8befd1.png) | ![steel-skin](https://cloud.githubusercontent.com/assets/1376749/24115799/eb2108e8-0d7a-11e7-8cc3-a6f22e4082ee.png) |\n\n### Google Fonts\n\nThis theme allows you to easily use [Google Fonts](https://fonts.google.com/) \nthroughout the theme. Simply add the following to your \n[`/_data/theme.yml`](_data/theme.yml), replacing the font `name` and `weights` \naccordingly.\n\n```yaml\ngoogle_fonts:\n  - name: \"Fira Sans\"\n    weights: \"400,400i,600,600i\"\n  - name: \"Fira Sans Condensed\"\n```\n\n### Text\n\nTo change text found throughout the theme add the following to your \n[`/_data/theme.yml`](_data/theme.yml) file and customize as necessary.\n\n```yaml\nt:\n  skip_links: \"Skip links\"\n  skip_primary_nav: \"Skip to primary navigation\"\n  skip_content: \"Skip to content\"\n  skip_footer: \"Skip to footer\"\n  menu: \"Menu\"\n  search: \"Search\"\n  site_search: \"Site Search\"\n  results_found: \"Result(s) found\"\n  search_placeholder_text: \"Enter your search term...\"\n  home: \"Home\"\n  newer: \"Newer\"\n  older: \"Older\"\n  email: \"Email\"\n  subscribe: \"Subscribe\"\n  read_more: \"Read More\"\n  posts: \"Posts\"\n  page: \"Page\"\n  of: \"of\"\n  min_read: \"min read\"\n  present: \"Present\"\n  cv_awards: \"Awards\"\n  cv_summary_contact: \"Contact\"\n  cv_summary_contact_email: \"Email\"\n  cv_summary_contact_phone: \"Phone\"\n  cv_summary_contact_website: \"Website\"\n  cv_location: \"Location\"\n  cv_education: \"Education\"\n  cv_education_courses: \"Courses\"\n  cv_interests: \"Interests\"\n  cv_languages: \"Languages\"\n  cv_publications: \"Publications\"\n  cv_references: \"References\"\n  cv_skills: \"Skills\"\n  cv_volunteer: \"Volunteer\"\n  cv_work: \"Work\"\n```\n\n### Navigation\n\nBy default all internal pages with a `title` will be added to the \"off-canvas\" \nmenu. For more granular control and sorting of these menu links:\n\n1. Create a custom list to override the default setting by adding a \n`navigation_pages` array to your [`/_data/theme.yml`](_data/theme.yml) file. \n\n2. Add raw page paths in the order you'd like:\n\n   ```yaml\n   navigation_pages:\n     - about.md\n     - cv.md\n   ```\n\nEach menu link's title and URL will be populated based on their `title` and \n`permalink` respectively.\n\n### Pagination\n\nBreak up the main listing of posts into smaller lists and display them over \nmultiple pages by [enabling pagination](http://jekyllrb.com/docs/pagination/).\n\n1. Include the `jekyll-paginate` plugin in your `Gemfile`.\n\n   ```ruby\n   group :jekyll_plugins do\n     gem \"jekyll-paginate\"\n   end\n   ```\n\n2. Add `jekyll-paginate` to `gems` array in your `_config.yml` file and the \nfollowing pagination settings:\n\n   ```yaml\n   paginate: 5  # amount of posts to show per page\n   paginate_path: /page:num/\n   ```\n\n3. Create `index.html` (or rename `index.md`) in the root of your project and \nadd the following front matter:\n\n   ```yaml\n   layout: home\n   paginate: true\n   ```\n\n### Search\n\nTo enable site-wide search add `search: true` to your `_config.yml`.\n\n#### Lunr (default)\n\nThe default search uses [**Lunr**](https://lunrjs.com/) to build a search index of all your documents. This method is 100% compatible with sites hosted on GitHub Pages.\n\n**Note:** Only the first 50 words of a post or page's body content is added to the Lunr search index. Setting `search_full_content` to `true` in your `_config.yml` will override this and could impact page load performance.\n\n#### Algolia\n\nFor faster and more relevant search ([see demo](https://mmistakes.github.io/jekyll-theme-basically-basic-algolia-search/)):\n\n1. Add the [`jekyll-algolia`](https://github.com/algolia/jekyll-algolia) gem to your `Gemfile`, in the `:jekyll_plugins` section.\n\n   ```ruby\n   group :jekyll_plugins do\n     gem \"jekyll-feed\"\n     gem \"jekyll-seo-tag\"\n     gem \"jekyll-sitemap\"\n     gem \"jekyll-paginate\"\n     gem \"jekyll-algolia\"\n   end\n   ```\n\n   Once this is done, download all dependencies by running `bundle install`.\n\n2. Switch search providers from `lunr` to `algolia` in your `_config.yml` file:\n\n   ```yaml\n   search_provider: algolia\n   ```\n\n3. Add the following Algolia credentials to your `_config.yml` file. *If you don't have an Algolia account, you can open a free [Community plan](https://www.algolia.com/users/sign_up/hacker). Once signed in, you can grab your credentials from [your dashboard](https://www.algolia.com/licensing).*\n\n   ```yaml\n   algolia:\n     application_id: # YOUR_APPLICATION_ID\n     index_name: # YOUR_INDEX_NAME\n     search_only_api_key: # YOUR_SEARCH_ONLY_API_KEY\n     powered_by: # true (default), false\n   ```\n\n4. Once your credentials are setup, you can run the indexing with the following command:\n\n   ```\n   ALGOLIA_API_KEY=your_admin_api_key bundle exec jekyll algolia\n   ```\n\n   For Windows users you will have to use `set` to assigned the `ALGOLIA_API_KEY` environment variable.\n\n   ```\n   set ALGOLIA_API_KEY=your_admin_api_key\n   bundle exec jekyll algolia\n   ```\n\n   Note that `ALGOLIA_API_KEY` should be set to your admin API key.\n\nTo use the Algolia search with GitHub Pages hosted sites follow [this deployment guide](https://community.algolia.com/jekyll-algolia/github-pages.html). Or this guide for [deploying on Netlify](https://community.algolia.com/jekyll-algolia/netlify.html).\n\n**Note:** The Jekyll Algolia plugin can be configured in several ways. Be sure to check out [their full documentation](https://community.algolia.com/jekyll-algolia/options.html \"Algolia configuration\") on how to exclude files and other valuable settings.\n\n### Author\n\nAuthor information is used as meta data for post \"by lines\" and propagates the \n`creator` field of Twitter summary cards with the following front matter in \n`_config.yml`:\n\n```yaml\nauthor:\n  name: John Doe\n  twitter: johndoetwitter\n  picture: /assets/images/johndoe.png\n```\n\nSite-wide author information can be overridden in a document's front matter in \nthe same way:\n\n```yaml\nauthor:\n  name: Jane Doe\n  twitter: janedoetwitter\n  picture: /assets/images/janedoe.png\n```\n\nOr by specifying a corresponding key in the document's front matter, that \nexists in `site.data.authors`. E.g., you have the following in the document's \nfront matter:\n\n```yaml\nauthor: megaman\n```\n\nAnd you have the following in `_data/authors.yml`:\n\n```yaml\nmegaman:\n  name: Mega Man\n  twitter: megamantwitter\n  picture: /assets/images/megaman.png\n\ndrlight:\n  name: Dr. Light\n  twitter: drlighttwitter\n  picture: /assets/images/drlight.png\n```\n\nCurrently `author.picture` is only used in `layout: about`. Recommended size is \n`300 x 300` pixels.\n\n### Reading Time\n\nTo enable reading time counts add `read_time: true` to a post or page's YAML \nFront Matter.\n\n### Comments (via Disqus)\n\nOptionally, if you have a [Disqus](https://disqus.com/) account, you can show a \ncomments section below each post.\n\nTo enable Disqus comments, add your [Disqus shortname](https://help.disqus.com/customer/portal/articles/466208) to your project's \n`_config.yml` file:\n\n```yaml\n  disqus:\n    shortname: my_disqus_shortname\n```\n\nComments are enabled by default and will only appear in production when built \nwith the following [environment value](http://jekyllrb.com/docs/configuration/#specifying-a-jekyll-environment-at-build-time): \n`JEKYLL_ENV=production`\n\nIf you don't want to display comments for a particular post you can disable \nthem by adding `comments: false` to that post's front matter.\n\n### Google Analytics\n\nTo enable Google Analytics, add your [tracking ID](https://support.google.com/analytics/answer/1032385) \nto `_config.yml` like so:\n\n```yaml\n  google_analytics: UA-NNNNNNNN-N\n```\n\nSimilar to comments, the Google Analytics tracking script will only appear in \nproduction when using the following environment value: `JEKYLL_ENV=production`.\n\n### Copyright\n\nBy default the copyright line in the footer displays the current year \n(at build time) followed by your site's title. e.g. `© 2018 Basically Basic.`\n\nIf you would like to change this add `copyright` to your `_config.yml` file \nwith appropriate text:\n\n```yaml\ncopyright: \"My custom copyright.\"\n```\n\n## Layouts\n\nThis theme provides the following layouts, which you can use by setting the \n`layout` [Front Matter](https://jekyllrb.com/docs/frontmatter/) on each page, \nlike so:\n\n```yaml\n---\nlayout: name\n---\n```\n\n### `layout: default`\n\nThis layout handles all of the basic page scaffolding placing the page content \nbetween the masthead and footer elements. All other layouts inherit this one \nand provide additional styling and features inside of the `{{ content }}` block.\n\n### `layout: post`\n\nThis layout accommodates the following front matter:\n\n```yaml\n# optional alternate title to replace page.title at the top of the page\nalt_title: \"Basically Basic\"\n\n# optional sub-title below the page title\nsub_title: \"The name says it all\"\n\n# optional intro text below titles, Markdown allowed\nintroduction: |\n    Basically Basic is a Jekyll theme meant to be a substitute for the default --- [Minima](https://github.com/jekyll/minima). Conventions and features found in Minima are fully supported by **Basically Basic**.\n\n# optional call to action links\nactions:\n  - label: \"Learn More\"\n    icon: github  # references name of svg icon, see full list below\n    url: \"http://url-goes-here.com\"\n  - label: \"Download\"\n    icon: download  # references name of svg icon, see full list below\n    url: \"http://url-goes-here.com\"\n\nimage:  # URL to a hero image associated with the post (e.g., /assets/page-pic.jpg)\n\n# post specific author data if different from what is set in _config.yml \nauthor:\n  name: John Doe\n  twitter: johndoetwitter\n\ncomments: false  # disable comments on this post\n```\n\n**Note:** Hero images can be overlaid with a transparent \"accent\" color to unify them with the theme's palette. To enable, [customize the CSS](#customizing-sass-scss) with the following Sass variable override:\n\n```scss\n$intro-image-color-overlay: true;\n```\n\n### `layout: page`\n\nVisually this layout looks and acts the same as `layout: post`, with two minor \ndifferences.\n\n- Author \"by line\" and publish date are omitted.\n- Disqus comments are omitted.\n\n### `layout: home`\n\nThis layout accommodates the same front matter as `layout: page`, with the \naddition of the following:\n\n```yaml\npaginate: true  # enables pagination loop, see section above for additional setup\nentries_layout: # list (default), grid\n```\n\nBy default, posts are shown in a list view. To change to a grid view add `entries_layout: grid` to the page's front matter.\n\n### `layout: posts`\n\nThis layout displays all posts grouped by the year they were published. It accommodates the same front matter as `layout: page`.\n\nBy default, posts are shown in a list view. To change to a grid view add `entries_layout: grid` to the page's front matter.\n\n### `layout: categories`\n\nThis layout displays all posts grouped category. It accommodates the same front matter as `layout: page`.\n\nBy default, posts are shown in a list view. To change to a grid view add `entries_layout: grid` to the page's front matter.\n\n### `layout: tags`\n\nThis layout displays all posts grouped by tag. It accommodates the same front matter as `layout: page`.\n\nBy default, posts are shown in a list view. To change to a grid view add `entries_layout: grid` to the page's front matter.\n\n### `layout: collection`\n\nThis layout displays all documents grouped by a specific collection. It accommodates the same front matter as `layout: page` with the addition of the following:\n\n```yaml\ncollection: # collection name\nentries_layout: # list (default), grid\nshow_excerpts: # true (default), false\nsort_by: # date (default) title\nsort_order: # forward (default), reverse\n```\n\nTo create a page showing all documents in the `recipes` collection you'd create `recipes.md` in the root of your project and add this front matter:\n\n```yaml\ntitle: Recipes\nlayout: collection\npermalink: /recipes/\ncollection: recipes\n```\n\nBy default, documents are shown in a list view. To change to a grid view add `entries_layout: grid` to the page's front matter. If you want to sort the collection by title add `sort_by: title`. If you want reverse sorting, add `sort_order: reverse`.\n\n### `layout: category`\n\nThis layout displays all posts grouped by a specific category. It accommodates the same front matter as `layout: page` with the addition of the following:\n\n```yaml\ntaxonomy: # category name\nentries_layout: # list (default), grid\n```\n\nBy default, posts are shown in a list view. To change to a grid view add `entries_layout: grid` to the page's front matter.\n\nTo create a page showing all posts assigned to the category `foo` you'd create `foo.md` in the root of your project and add this front matter:\n\n```yaml\ntitle: Foo\nlayout: category\npermalink: /categories/foo/\ntaxonomy: foo\n```\n\n### `layout: tag`\n\nThis layout displays all posts grouped by a specific tag. It accommodates the same front matter as `layout: page` with the addition of the following:\n\n```yaml\ntaxonomy: # tag name\nentries_layout: # list (default), grid\n```\n\nBy default, posts are shown in a list view. To change to a grid view add `entries_layout: grid` to the page's front matter.\n\nTo create a page showing all posts assigned to the tag `foo bar` you'd create `foo-bar.md` in the root of your project and add this front matter:\n\n```yaml\ntitle: Foo Bar\nlayout: tag\npermalink: /tags/foo-bar/\ntaxonomy: foo bar\n```\n\n### `layout: about`\n\nThis layout accommodates the same front matter as `layout: page`, with the \naddition of the following to display an author picture:\n\n```yaml\nauthor:\n  name: John Doe\n  picture: /assets/images/johndoe.png\n```\n\nRecommended `picture` size is approximately `300 x 300` pixels. If `author` \nobject is not explicitly set in the about page's front matter the theme \nwill default to the value set in `_config.yml`.\n\nIf blank there no image will appear.\n\n### `layout: cv`\n\nThis layout accommodates the same front matter as `layout: page`. It \nleverages a [JSON-based file standard](https://jsonresume.org/schema/) for \nresume data to conveniently render a curriculum vitæ or resume painlessly.\n\nSimply use JSON Resume's [in-browser resume builder](http://registry.jsonresume.org/) \nto export a JSON file and save to your project as `_data/cv.json`.\n\n## Images\n\nSuggested image sizes in pixels are as follows:\n\n| Image | Description | Size |\n| ----- | ----------- | ---- |\n| `page.image.path` | Large full-width document image. | Tall images will push content down the page. `1600 x 600` is a good middle-ground size to aim for. |\n| `page.image` | Short-hand for `page.image.path` when used alone (without `thumbnail`, `caption`, or other variables). | Same as `page.image.path` |\n| `page.image.thumbnail` | Small document image used in grid view. | `400 x 200` |\n| `author.picture` | Author page image. | `300 x 300` |\n\n## Customization\n\nThe default structure, style, and scripts of this theme can be overridden and \ncustomized in the following two ways.\n\n### Overriding Includes and Layouts\n\nTheme defaults can be [overridden](http://jekyllrb.com/docs/themes/#overriding-theme-defaults) \nby placing a file with the same name into your project's `_includes` or \n`_layouts` directory. For instance:\n\n- To specify a custom style path or meta data to the [`_includes/head.html `](_includes/head.html) \nfile, create an `_includes` directory in your project, copy \n`_includes/head.html` from Basically Basic's gem folder to \n`\u003cyour_project\u003e/_includes` and start editing that file.\n\n**ProTip:** to locate the theme's files on your computer run \n`bundle info jekyll-theme-basically-basic`. This returns the location of the \ngem-based theme files.\n\n### Customizing Sass (SCSS)\n\nTo override the default [Sass](http://sass-lang.com/guide) (located in theme's \n`_sass` directory), do one of the following:\n\n1. Copy directly from the Basically Basic gem\n\n   - Go to your local Basically Basic gem installation directory (run \n     `bundle info jekyll-theme-basically-basic` to get the path to it).\n   - Copy the contents of `/assets/stylesheets/main.scss` from there to \n     `\u003cyour_project\u003e`.\n   - Customize what you want inside `\u003cyour_project\u003e/assets/stylesheets/main.scss`.\n\n2. Copy from this repo.\n\n   - Copy the contents of [assets/stylesheets/main.scss](assets/stylesheets/main.scss) \n     to `\u003cyour_project\u003e`.\n   - Customize what you want inside `\u003cyour_project/assets/stylesheets/main.scss`.\n\n**Note:** To make more extensive changes and customize the Sass partials bundled \nin the gem. You will need to copy the complete contents of the `_sass` directory \nto `\u003cyour_project\u003e` due to the way Jekyll currently reads those files.\n\nTo make basic tweaks to theme's style Sass variables can be overridden by adding \nto `\u003cyour_project\u003e/assets/stylesheets/main.scss`. For instance, to change the \naccent color used throughout the theme add the following:\n\n```scss\n$accent-color: red;\n```\n\n### Customizing JavaScript\n\nTo override the default JavaScript bundled in the theme, do one of the following:\n\n1. Copy directly from the Basically Basic gem\n\n   - Go to your local Basically Basic gem installation directory (run \n     `bundle info jekyll-theme-basically-basic` to get the path to it).\n   - Copy the contents of `/assets/javascripts/main.js` from there to \n     `\u003cyour_project\u003e`.\n   - Customize what you want inside `\u003cyour_project\u003e/assets/javascripts/main.js`.\n\n2. Copy from this repo.\n\n   - Copy the contents of [assets/javascripts/main.js](assets/javascripts/main.js) \n     to `\u003cyour_project\u003e`.\n   - Customize what you want inside `\u003cyour_project\u003e/assets/javascripts/main.js`.\n\n### SVG Icons\n\nThe theme uses social network logos and other iconography saved as SVGs for \nperformance and flexibility. Said SVGs are located in the `_includes` directory \nand prefixed with `icon-`. Each icon has been sized and designed to fit a \n`16 x 16` viewbox and optimized with [SVGO](https://github.com/svg/svgo).\n\n| Icon | Filename |\n| --- | --- |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-arrow-left.svg\" width=\"16\" height=\"16\"\u003e | icon-arrow-left.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-arrow-right.svg\" width=\"16\" height=\"16\"\u003e | icon-arrow-right.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-bitbucket.svg\" width=\"16\" height=\"16\"\u003e | icon-bitbucket.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-calendar.svg\" width=\"16\" height=\"16\"\u003e | icon-calendar.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-codepen.svg\" width=\"16\" height=\"16\"\u003e | icon-codepen.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-download.svg\" width=\"16\" height=\"16\"\u003e | icon-download.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-dribbble.svg\" width=\"16\" height=\"16\"\u003e | icon-dribbble.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-email.svg\" width=\"16\" height=\"16\"\u003e | icon-email.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-facebook.svg\" width=\"16\" height=\"16\"\u003e | icon-facebook.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-flickr.svg\" width=\"16\" height=\"16\"\u003e | icon-flickr.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-github.svg\" width=\"16\" height=\"16\"\u003e | icon-github.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-gitlab.svg\" width=\"16\" height=\"16\"\u003e | icon-gitlab.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-googleplus.svg\" width=\"16\" height=\"16\"\u003e | icon-googleplus.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-instagram.svg\" width=\"16\" height=\"16\"\u003e | icon-instagram.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-lastfm.svg\" width=\"16\" height=\"16\"\u003e | icon-lastfm.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-linkedin.svg\" width=\"16\" height=\"16\"\u003e | icon-linkedin.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-pdf.svg\" width=\"16\" height=\"16\"\u003e | icon-pdf.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-pinterest.svg\" width=\"16\" height=\"16\"\u003e | icon-pinterest.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-rss.svg\" width=\"16\" height=\"16\"\u003e | icon-rss.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-soundcloud.svg\" width=\"16\" height=\"16\"\u003e | icon-soundcloud.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-stackoverflow.svg\" width=\"16\" height=\"16\"\u003e | icon-stackoverflow.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-stopwatch.svg\" width=\"16\" height=\"16\"\u003e | icon-stopwatch.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-tumblr.svg\" width=\"16\" height=\"16\"\u003e | icon-tumblr.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-twitter.svg\" width=\"16\" height=\"16\"\u003e | icon-twitter.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-xing.svg\" width=\"16\" height=\"16\"\u003e | icon-xing.svg |\n| \u003cimg src=\"https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-youtube.svg\" width=\"16\" height=\"16\"\u003e | icon-youtube.svg |\n\nFill colors are defined in the `_sass/basically-basic/_icons.scss` partial and \nset with `.icon-name` where class name matches the corresponding icon.\n\nFor example the Twitter icon is given a fill color of `#1da1f2` like so:\n\n```html\n\u003cspan class=\"icon icon--twitter\"\u003e{% include icon-twitter.svg %}\u003c/span\u003e\n```\n\nAlongside the SVG assets, there are icon helper includes to aid in generating \nsocial network links.\n\n| Include Parameter | Description                      | Required                |\n| ----------------- | ---------------------------------| ----------------------- |\n| `username`        | Username on given social network | **Required**            |\n| `label`           | Text used for hyperlink | Optional, defaults to `username` |\n\nFor example, the following `icon-github.html` include:\n\n```liquid\n{% include icon-github.html username=jekyll label='GitHub' %}\n```\n\nWill output the following HTML:\n\n```html\n\u003ca href=\"https://github.com/jekyll\"\u003e\n  \u003cspan class=\"icon icon--github\"\u003e\u003csvg viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\" fill-rule=\"evenodd\" clip-rule=\"evenodd\" stroke-linejoin=\"round\" stroke-miterlimit=\"1.414\"\u003e\u003cpath d=\"M8 0C3.58 0 0 3.582 0 8c0 3.535 2.292 6.533 5.47 7.59.4.075.547-.172.547-.385 0-.19-.007-.693-.01-1.36-2.226.483-2.695-1.073-2.695-1.073-.364-.924-.89-1.17-.89-1.17-.725-.496.056-.486.056-.486.803.056 1.225.824 1.225.824.714 1.223 1.873.87 2.33.665.072-.517.278-.87.507-1.07-1.777-.2-3.644-.888-3.644-3.953 0-.873.31-1.587.823-2.147-.09-.202-.36-1.015.07-2.117 0 0 .67-.215 2.2.82.64-.178 1.32-.266 2-.27.68.004 1.36.092 2 .27 1.52-1.035 2.19-.82 2.19-.82.43 1.102.16 1.915.08 2.117.51.56.82 1.274.82 2.147 0 3.073-1.87 3.75-3.65 3.947.28.24.54.73.54 1.48 0 1.07-.01 1.93-.01 2.19 0 .21.14.46.55.38C13.71 14.53 16 11.53 16 8c0-4.418-3.582-8-8-8\"\u003e\u003c/path\u003e\u003c/svg\u003e\u003c/span\u003e\n  \u003cspan class=\"label\"\u003eGitHub\u003c/span\u003e\n\u003c/a\u003e\n```\n\n### Customizing Sidebar Content\n\n---\n\n## Development\n\nTo set up your environment to develop this theme:\n\n1. Clone this repo\n2. `cd` into `/example` and run `bundle install`.\n\nTo test the theme the locally as you make changes to it:\n\n1. `cd` into the root folder of the repo (e.g. `jekyll-theme-basically-basic`).\n2. Run `bundle exec rake preview` and open your browser to \n   `http://localhost:4000/example/`. \n\nThis starts a Jekyll server using the theme's files and contents of the \n`example/` directory. As modifications are made, refresh your browser to see \nany changes.\n\n## Contributing\n\nFound a typo in the documentation? Interested in adding a feature or \n[fixing a bug][issues]? Then by all means [submit an issue][new-issue] or take a\nstab at submitting a [pull request][using-pull-requests]. If this is your first \npull request, it may be helpful to read up on the [GitHub Flow][github-flow].\n\n[issues]: https://github.com/mmistakes/jekyll-theme-basically-basic/issues\n[new-issue]: https://github.com/mmistakes/jekyll-theme-basically-basic/issues/new\n[using-pull-requests]: https://help.github.com/articles/using-pull-requests/\n[github-flow]: https://guides.github.com/introduction/flow/\n\n### Pull Requests\n\nWhen submitting a pull request:\n\n1. Clone the repo.\n2. Create a branch off of `master` and give it a meaningful name (e.g.\n   `my-awesome-new-feature`) and describe the feature or fix.\n3. Open a pull request on GitHub.\n\nSample pages can be found in the [`/docs`](docs) and [`/example`](/example) \nfolders if you'd like to tackle any \"low-hanging fruit\" like fixing typos, bad \ngrammar, etc.\n\n---\n\n## Credits\n\n### Creator\n\n**Michael Rose**\n\n- \u003chttps://mademistakes.com\u003e\n- \u003chttps://twitter.com/mmistakes\u003e\n- \u003chttps://github.com/mmistakes\u003e\n\n### Icons + Demo Images:\n\n- [Simple Icons](https://simpleicons.org/)\n- [Noun Project](https://thenounproject.com)\n- [Unsplash](https://unsplash.com/)\n\n### Other:\n\n- [Jekyll](http://jekyllrb.com/)\n- [Susy](http://susy.oddbird.net/)\n- [Breakpoint](http://breakpoint-sass.com/)\n\n---\n\n## License\n\nThe MIT License (MIT)\n\nCopyright (c) 2017-2021 Michael Rose and contributors\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n\nBasically Basic incorporates icons from [The Noun Project](https://thenounproject.com/).\nIcons are distributed under Creative Commons Attribution 3.0 United States (CC BY 3.0 US).\n\nBasically Basic incorporates photographs from [Unsplash](https://unsplash.com).\n\nBasically Basic incorporates [Susy](http://susy.oddbird.net/),\nCopyright (c) 2017, Miriam Eric Suzanne.\nSusy is distributed under the terms of the [BSD 3-clause \"New\" or \"Revised\" License](https://opensource.org/licenses/BSD-3-Clause).\n\nBasically Basic incorporates [Breakpoint](http://breakpoint-sass.com/).\nBreakpoint is distributed under the terms of the [MIT/GPL Licenses](http://opensource.org/licenses/MIT).\n","funding_links":["https://github.com/sponsors/mmistakes","https://www.paypal.me/mmistakes"],"categories":["SCSS","CSS"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmmistakes%2Fjekyll-theme-basically-basic","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmmistakes%2Fjekyll-theme-basically-basic","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmmistakes%2Fjekyll-theme-basically-basic/lists"}