mirror of https://gitlab.com/curben/blog
4.8 KiB
4.8 KiB
curben.netlify.com
Forked from GitLab's Hexo example with Typing theme.
Installation
Refer to this post for more detailed instruction.
Plugins
- Installed hexo-nofollow for SEO purpose to prevent search engines from following external links.
- Installed hexo-yam to pre-compress static assets (html, css, js and svg).
- copy-button.js - A filter plugin to add a copy button to each code block.
- feed - A generator plugin to generate an RSS feed. Modified from hexo-generator-feed to use
post.lastUpdated
instead ofpost.updated
. - heading-link.js - A filter plugin to add a link button next to each heading.
- image.js - A tag plugin to easily embed images in a post with responsive image support.
- link.js - A helper plugin to add a link. Modified from link_to.js to remove title attribute and 'external' option.
- openGraph - A helper plugin to add Open Graph tags. Modified from open_graph.js to use additional Open Graph tags and WHATWG URL API.
- sitemap - A generator plugin to generate a sitemap. Modified from hexo-generator-sitemap with this patch to include tags/categories and remove index.html from the URL.
Changes
The following are the major changes I made compared to the upstream.
Hexo site
- Updated .gitlab-ci.yml to use the latest version of Node.js in Alpine docker image.
- All packages are installed from their respective master branch, instead of npm published version.
- Removed unused packages, hexo-generator-category and hexo-renderer-stylus from the default packages.
- Replaced the bundled Landscape theme with Typing theme.
- Add
lastUpdated
to the front-matter to manually set updated time of a post, instead of usingpost.updated
.
Chameleon theme
Chameleon is a fork of Typing theme, rewrite from scratch with the following changes/features:
- sanitize.css and autoprefixer for consistent cross-browser styling.
- Utilise relative length instead of absolute length in the css.
prefers-color-scheme
to apply light/dark theme according to the OS preference.- Add a Copy button to each code block.
- Removed jQuery, fancyBox, web analytics, comment plugins, donation links and typo.css.
- Homepage shows index of posts (same as /archives).
License
The content of this blog is licensed under the CC-BY-SA license, and the underlying source code used to format and display that content is licensed under the MIT license, unless indicated otherwise.
Useful links: