Basically Basic is a Jekyll theme meant as a substitute for the default Minima, with a few enhancements thrown in for good measure:
If you're running Jekyll v3.5+ and self-hosting you can quickly install the theme as a Ruby gem. If you're hosting with GitHub Pages you can install as a remote theme or directly copy all of the theme files (see structure below) into your project.
Add this line to your Jekyll site's Gemfile:
gem "jekyll-theme-basically-basic"
Add this line to your Jekyll site's _config.yml file:
theme: jekyll-theme-basically-basic
Then run Bundler to install the theme gem and dependencies:
bundle install
GitHub Pages has added full support for any GitHub-hosted theme.
Replace gem "jekyll" with:
gem "github-pages", group: :jekyll_plugins
Run bundle update and verify that all gems install properly.
Add remote_theme: "mmistakes/jekyll-theme-basically-basic@1.4.5" to your
_config.yml file. Remove any other theme: or remote_theme: entries.
Note: Your Jekyll site should be viewable immediately at http://USERNAME.github.io. If it's not, you can force a rebuild by Customizing Your Site (see below for more details).
If you're hosting several Jekyll based sites under the same GitHub username you
will have to use Project Pages instead of User Pages. Essentially you rename the
repo to something other than USERNAME.github.io and create a gh-pages
branch off of master. For more details on how to set things up check
GitHub's documentation.
If you forked or downloaded the jekyll-theme-basically-basic repo you can
safely remove the following files and folders:
.editorconfig.gitattributes.github.scss-lint.ymlCHANGELOG.mdjekyll-theme-basically-basic.gemspecLICENSERakefileREADME.mdscreenshot.png/docs/exampleIf you're using the Ruby Gem or remote theme versions of Basically Basic, upgrading is fairly painless.
To check which version you are currently using, view the source of your built site and you should something similar to:
<!--
Basically Basic Jekyll Theme 1.4.5
Copyright 2017-2018 Michael Rose - mademistakes.com | @mmistakes
Free for personal and commercial use under the MIT license
https://github.com/mmistakes/jekyll-basically-theme/blob/master/LICENSE
-->
At the top of every .html file, /assets/css/main.css, and /assets/js/main.js.
Simply run bundle update if you're using Bundler (have a Gemfile) or gem update jekyll-theme-basically-basic if you're not.
Verify you have the latest version assigned in _config.yml
remote_theme: "mmistakes/jekyll-theme-basically-basic@1.4.5"
Note: If @x.x.x is omitted the theme's current master branch will be used. It is advised to "lock" remote_theme at a specific version to avoid introducing breaking changes to your site.
The next step requires rebuilding your GitHub Pages site so it can pull down the latest theme updates. This can be achieved by pushing up a commit to your GitHub repo.
An empty commit will get the job done too if you don't have anything to push at the moment:
git commit --allow-empty -m "Force rebuild of site"
If you want to get the most out of the Jekyll + GitHub Pages workflow, then you'll need to utilize Git. To pull down theme updates you must first ensure there's an upstream remote. If you forked the theme's repo then you're likely good to go.
To double check, run git remote -v and verify that you can fetch from origin https://github.com/mmistakes/jekyll-theme-basically-basic.git.
To add it you can do the following:
git remote add upstream https://github.com/mmistakes/jekyll-theme-basically-basic.git
Now you can pull any commits made to theme's master branch with:
git pull upstream master
Depending on the amount of customizations you've made after forking, there's likely to be merge conflicts. Work through any conflicting files Git flags, staging the changes you wish to keep, and then commit them.
Another way of dealing with updates is downloading the theme --- replacing your layouts, includes, and assets with the newer ones manually. To be sure that you don't miss any changes it's probably a good idea to review the theme's commit history to see what's changed since.
Here's a quick checklist of the important folders/files you'll want to be mindful of:
| Name | |
|---|---|
_layouts | Replace all. Apply edits if you customized any layouts. |
_includes | Replace all. Apply edits if you customized any includes. |
assets | Replace all. Apply edits if you customized stylesheets or scripts. |
_sass | Replace all. Apply edits if you customized Sass partials. |
_data/theme.yml | Safe to keep. Verify that there were no major structural changes or additions. |
_config.yml | Safe to keep. Verify that there were no major structural changes or additions. |
Note: If you're not seeing the latest version, be sure to flush browser and
CDN caches. Depending on your hosting environment older versions of
/assets/css/main.css, /assets/js/main.js, or *.html may be cached.
Layouts, includes, Sass partials, and data files are all placed in their default
locations. Stylesheets and scripts in assets, and a few development related
files in the project's root directory.
Please note: If you installed Basically Basic via the Ruby Gem method, theme
files found in /_layouts, /_includes, /_sass, and /assets will be
missing. This is normal as they are bundled with the jekyll-theme-basically-basic gem.
jekyll-theme-basically-basic ├── _data # data files | └── theme.yml # theme settings and custom text ├── _includes # theme includes and SVG icons ├── _layouts # theme layouts (see below for details) ├── _sass # Sass partials ├── assets | ├── javascripts | | └── main.js | └── stylesheets | └── main.scss ├── _config.yml # sample configuration └─ ─ index.md # sample home page (all posts/not paginated)
After creating a Gemfile and installing the theme you'll need to add and edit
the following files:
Note: Consult the pagination documentation below for instructions on how to enable it for the home page.
jekyll newUsing the jekyll new command will get you up and running the quickest.
Edit _config.yml and create _data/theme.yml as instructed above and you're
good to go.
Configuration of site-wide elements (lang, title, description, logo,
author, etc.) happens in your project's _config.yml. See the
example configuration in this repo for additional
reference.
| Description | |
|---|---|
lang | Used to indicate the language of text (e.g., en-US, en-GB, fr) |
title | Your site's title (e.g., Dungan's Awesome Site) |
description | Short site description (e.g., A blog about grasshopper mash) |
url | The full URL to your site (e.g., https://groverloaf.org) |
author | Global author information (see below) |
logo | Path to a site-wide logo ~100x100px (e.g., /assets/your-company-logo.png) |
twitter_username | Site-wide Twitter username, used as a link in sidebar |
github_username | Site-wide GitHub username, used as a link in sidebar |
For more configuration options be sure to consult the documentation for: jekyll-seo-tag, jekyll-feed, jekyll-paginate, and jekyll-sitemap.
This theme comes in six different skins (color variations). To change skins add
one of the following to your /_data/theme.yml file:
skin: default | skin: night | skin: plum |
|---|---|---|
![]() | ![]() | ![]() |
skin: sea | skin: soft | skin: steel |
|---|---|---|
![]() | ![]() | ![]() |
This theme allows you to easily use Google Fonts
throughout the theme. Simply add the following to your
/_data/theme.yml, replacing the font name and weights
accordingly.
google_fonts: - name: "Fira Sans" weights: "400,400i,600,600i" - name: "Fira Sans Condensed"
To change text found throughout the theme add the following to your
/_data/theme.yml file and customize as necessary.
t: skip_links: "Skip links" skip_primary_nav: "Skip to primary navigation" skip_content: "Skip to content" skip_footer: "Skip to footer" menu: "Menu" search: "Search" site_search: "Site Search" results_found: "Result(s) found" search_placeholder_text: "Enter your search term..." home: "Home" newer: "Newer" older: "Older" email: "Email" subscribe: "Subscribe" read_more: "Read More" posts: "Posts" page: "Page" of: "of" min_read: "min read" present: "Present" cv_awards: "Awards" cv_summary_contact: "Contact" cv_summary_contact_email: "Email" cv_summary_contact_phone: "Phone" cv_summary_contact_website: "Website" cv_location: "Location" cv_education: "Education" cv_education_courses: "Courses" cv_interests: "Interests" cv_languages: "Languages" cv_publications: "Publications" cv_references: "References" cv_skills: "Skills" cv_volunteer: "Volunteer" cv_work: "Work"
By default all internal pages with a title will be added to the "off-canvas"
menu. For more granular control and sorting of these menu links:
Create a custom list to override the default setting by adding a
navigation_pages array to your /_data/theme.yml file.
Add raw page paths in the order you'd like:
navigation_pages: - about.md - cv.md
Each menu link's title and URL will be populated based on their title and
permalink respectively.
Break up the main listing of posts into smaller lists and display them over multiple pages by enabling pagination.
Include the jekyll-paginate plugin in your Gemfile.
group :jekyll_plugins do gem "jekyll-paginate" end
Add jekyll-paginate to gems array in your _config.yml file and the
following pagination settings:
paginate: 5 # amount of posts to show per page paginate_path: /page:num/
Create index.html (or rename index.md) in the root of your project and
add the following front matter:
layout: home paginate: true
To enable site-wide search add search: true to your _config.yml.
The default search uses Lunr to build a search index of all your documents. This method is 100% compatible with sites hosted on GitHub Pages.
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.
For faster and more relevant search (see demo):
Add the jekyll-algolia gem to your Gemfile, in the :jekyll_plugins section.
group :jekyll_plugins do gem "jekyll-feed" gem "jekyll-seo-tag" gem "jekyll-sitemap" gem "jekyll-paginate" gem "jekyll-algolia" end
Once this is done, download all dependencies by running bundle install.
Switch search providers from lunr to algolia in your _config.yml file:
search_provider: algolia
Add the following Algolia credentials to your _config.yml file.


稳定高效的流量提升解决方案,助力品牌曝光
稳定高效的流量提升解决方案,助力品牌曝光


最新版Sora2模型免费使用,一键生成无水印视频
最新版Sora2模型免费使用,一键生成无水印视频


实时语音翻译/同声传译工具
Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。


选题、配图、成文,一站式创作,让内容运营更高效
讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。


AI辅助编程,代码自动修复
Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。


最强AI数据分析助手
小浣熊家族Raccoon,您的AI智能助手,致力于通过先进的人工智能技术,为用户提供高效、便捷的智能服务。无论是日常咨询还是专业问题解答,小浣熊都能以快速、准确的响应满足您的需求,让您的生活更加智能便捷。


像人一样思考的AI智能体
imini 是一款超级AI智能体,能根据人类指令,自主思考、自主完成、并且交付结果的AI智能体。


AI数字人视频创作平台
Keevx 一款开箱即用的AI数字人视频创作平台,广泛适用于电商广告、企业培训与社媒宣传,让全球企业与 个人创作者无需拍摄剪辑,就能快速生成多语言、高质量的专业视频。


一站式AI创作平台
提供 AI 驱动的图片、视频生成及数字人等功能,助力创意创作


AI办公助手,复杂任务高效处理
AI办公助手,复杂任务高效处理。办公效率低?扣子空间AI助手支持播客生成、PPT制作、网页开发及报告写作,覆盖科研、商业、舆情等领域的专家Agent 7x24小时响应,生活工作无缝切换,提升50%效率!
最新AI工具、AI资讯
独家AI资源、AI项目落地

微信扫一扫关注公众号