{"id":13399847,"url":"https://github.com/sighingnow/jekyll-gitbook","last_synced_at":"2025-10-06T02:33:46.892Z","repository":{"id":37331414,"uuid":"183875188","full_name":"sighingnow/jekyll-gitbook","owner":"sighingnow","description":"Build Jekyll site with GitBook style!","archived":false,"fork":false,"pushed_at":"2024-08-11T09:35:13.000Z","size":2460,"stargazers_count":578,"open_issues_count":13,"forks_count":1103,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-04-07T21:14:55.623Z","etag":null,"topics":["gitbook","github-page","html","jekyll-gitbook","jekyll-theme","jekyll-themes","theme"],"latest_commit_sha":null,"homepage":"https://sighingnow.github.io/jekyll-gitbook","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sighingnow.png","metadata":{"files":{"readme":"README.md","changelog":null,"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}},"created_at":"2019-04-28T07:50:06.000Z","updated_at":"2025-04-02T04:32:38.000Z","dependencies_parsed_at":"2023-12-21T19:41:50.350Z","dependency_job_id":"419157bb-de01-4e59-ade9-33ee83273d09","html_url":"https://github.com/sighingnow/jekyll-gitbook","commit_stats":{"total_commits":83,"total_committers":9,"mean_commits":9.222222222222221,"dds":0.2530120481927711,"last_synced_commit":"a7d876936fe650c46eaf9eca92dc7afe0f1e1f17"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sighingnow%2Fjekyll-gitbook","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sighingnow%2Fjekyll-gitbook/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sighingnow%2Fjekyll-gitbook/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sighingnow%2Fjekyll-gitbook/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sighingnow","download_url":"https://codeload.github.com/sighingnow/jekyll-gitbook/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254374475,"owners_count":22060611,"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":["gitbook","github-page","html","jekyll-gitbook","jekyll-theme","jekyll-themes","theme"],"created_at":"2024-07-30T19:00:43.976Z","updated_at":"2025-10-06T02:33:41.830Z","avatar_url":"https://github.com/sighingnow.png","language":"CSS","funding_links":[],"categories":["CSS"],"sub_categories":[],"readme":"---\nlayout: home\ntitle: Jekyll Gitbook Theme\npermalink: /\n---\n\nMake Jelly site have a GitBook look!\n\n## Demo\n\nLive demo on Github Pages: [https://sighingnow.github.io/jekyll-gitbook](https://sighingnow.github.io/jekyll-gitbook)\n\n[![Jekyll Themes](https://img.shields.io/badge/featured%20on-JekyllThemes-red.svg)](https://jekyll-themes.com/jekyll-gitbook/)\n\n## Why Jekyll with GitBook\n\nGitBook is an amazing frontend style to present and organize contents (such as book chapters\nand blogs) on Web. The typical to deploy GitBook at [Github Pages][1]\nis building HTML files locally and then push to Github repository, usually to the `gh-pages`\nbranch. It's quite annoying to repeat such workload and make it hard for people do version\ncontrol via git for when there are generated HTML files to be staged in and out.\n\nThis theme takes style definition out of generated GitBook site and provided the template\nfor Jekyll to rendering markdown documents to HTML, thus the whole site can be deployed\nto [Github Pages][1] without generating and uploading HTML bundle every time when there are\nchanges to the original repo.\n\n## How to Get Started\n\nThis theme can be used just as other [Jekyll themes][1] and support [remote theme][12],\nsee [the official guide][13] as well.\n\nYou can introduce this jekyll theme into your own site by either\n\n- [Fork][3] this repository and add your markdown posts to the `_posts` folder.\n- Use as a remote theme in your [`_config.yml`][14](just like what we do for this\n  site itself),\n\n```yaml\nremote_theme: sighingnow/jekyll-gitbook\n```\n\n### Deploy Locally with Jekyll Serve\n\nThis theme can be ran locally using Ruby and Gemfiles.\n\n[Testing your GitHub Pages site locally with Jekyll](https://docs.github.com/en/pages/setting-up-a-github-pages-site-with-jekyll/testing-your-github-pages-site-locally-with-jekyll) - GitHub\n\n## Full-text search\n\nThe search functionality in jekyll-gitbook theme is powered by the [gitbook-plugin-search-pro][5] plugin and is enabled by default.\n\n[https://sighingnow.github.io/jekyll-gitbook/?q=generated](https://sighingnow.github.io/jekyll-gitbook/?q=generated)\n\n## Code highlight\n\nThe code highlight style is configurable the following entry in `_config.yaml`:\n\n```yaml\nsyntax_highlighter_style: colorful\n```\n\nThe default code highlight style is `colorful`, the full supported styles can be found from [the rouge repository][6]. Customized\nstyle can be added to [./assets/gitbook/rouge/](./assets/gitbook/rouge/).\n\n## How to generate TOC\n\nThe jekyll-gitbook theme leverages [jekyll-toc][4] to generate the *Contents* for the page.\nThe TOC feature is not enabled by default. To use the TOC feature, modify the TOC\nconfiguration in `_config.yml`:\n\n```yaml\ntoc:\n    enabled: true\n    h_min: 1\n    h_max: 3\n```\n\n## Google Analytics, etc.\n\nThe jekyll-gitboook theme supports embedding the [Google Analytics][7], [CNZZ][8] and [Application Insights][9] website analytical tools with the following\nminimal configuration in `_config.yaml`:\n\n```yaml\ntracker:\n  google_analytics: \"\u003cYOUR GOOGLE ANALYTICS KEY, e.g, UA-xxxxxx-x\u003e\"\n```\n\nSimilarly, CNZZ can be added with the following configuration in `_config.yaml`\n\n```yaml\ntracker:\n  cnzz: \"\u003cYOUR CNZZ ANALYTICS KEY, e.g., xxxxxxxx\u003e\"\n```\n\nApplication Insights can be added with the following configuration in `_config.yaml`\n\n```yaml\ntracker:\n  application_insights: \"\u003cYOUR APPLICATION INSIGHTS CONNECTION STRING\u003e\"\n```\n\n## Disqus comments\n\n[Disqus](https://disqus.com/) comments can be enabled by adding the following configuration in `_config.yaml`:\n\n```yaml\ndisqushandler: \"\u003cYOUR DISQUS SHORTNAME\u003e\"\n```\n\n## Jekyll collections\n\nJekyll's [collections][15] is supported to organize the pages in a more fine-grained manner, e.g.,\n\n```yaml\ncollections:\n  pages:\n    output: true\n    sort_by: date\n    permalink: /:collection/:year-:month-:day-:title:output_ext\n  others:\n    output: true\n    sort_by: date\n    permalink: /:collection/:year-:month-:day-:title:output_ext\n```\n\nAn optional `ordered_collections` key can be added to `_config.yaml` to control the order of collections in the sidebar:\n\n```yaml\nordered_collections:\n  - posts\n  - pages\n  - others\n```\n\nIf not specified, the order of collections would be decided by Jekyll. Note that the key `posts` is a special collection\nthat indicates the `_posts` pages of Jekyll.\n\n## Extra StyleSheet or Javascript elements\n\nYou can add extra CSS or JavaScript references using configuration collections:\n\n- extra_css: for additional style sheets. If the url does not start by http, the path must be relative to the root of the site, without a starting `/`.\n- extra_header_js: for additional scripts to be included in the `\u003chead\u003e` tag, after the `extra_css` has been added. If the url does not start by http, the path must be relative to the root of the site, without a starting `/`.\n- extra_footer_js: for additional scripts to be included at the end of the HTML document, just before the site tracking script. If the url does not start by http, the path must be relative to the root of the site, without a starting `/`.\n\n## Customizing font settings\n\nThe fonts can be customized by modifying the `.book.font-family-0` and `.book.font-family-1` entry in [`./assets/gitbook/custom.css`][10],\n\n```css\n.book.font-family-0 {\n    font-family: Georgia, serif;\n}\n.book.font-family-1 {\n    font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n}\n```\n\n## Tips, Warnings and Dangers blocks\n\nThe jekyll-gitbook theme supports customized kramdown attributes (`{: .block-tip }`, `{: .block-warning }`,\n`{: .block-danger }`) like that displayed in [the discord.js website][11]. The marker can be used like\n\n```markdown\n\u003e ##### TIP\n\u003e\n\u003e This guide is last tested with @napi-rs/canvas^0.1.20, so make sure you have\n\u003e this or a similar version after installation.\n{: .block-tip }\n```\n\nRendered page can be previewed from\n\n[https://sighingnow.github.io/jekyll-gitbook/jekyll/2022-06-30-tips_warnings_dangers.html](https://sighingnow.github.io/jekyll-gitbook/jekyll/2022-06-30-tips_warnings_dangers.html)\n\n## Cover image inside pages\n\nThe jekyll-gitbook theme supports adding a cover image to a specific page by adding\na `cover` field to the page metadata:\n\n```diff\n  ---\n  title: Page with cover image\n  author: Tao He\n  date: 2022-05-24\n  category: Jekyll\n  layout: post\n+ cover: /assets/jekyll-gitbook/dinosaur.gif\n  ---\n```\n\nThe effect can be previewed from\n\n[https://sighingnow.github.io/jekyll-gitbook/jekyll/2022-05-24-page_cover.html](https://sighingnow.github.io/jekyll-gitbook/jekyll/2022-05-24-page_cover.html)\n\n## Diagrams with mermaid.js\n\nThis jekyll-theme supports [mermaid.js](https://mermaid.js.org/) to render diagrams\nin markdown.\n\nTo enable the mermaid support, you need to set `mermaid: true` in the front matter\nof your post.\n\n```markdown\n---\nmermaid: true\n---\n```\n\nThe example can be previewed from\n\n[https://sighingnow.github.io/jekyll-gitbook/jekyll/2023-08-31-mermaid.html](https://sighingnow.github.io/jekyll-gitbook/jekyll/2023-08-31-mermaid.html)\n\n## License\n\nThis work is open sourced under the Apache License, Version 2.0.\n\nCopyright 2019 Tao He.\n\n[1]: https://pages.github.com\n[2]: https://pages.github.com/themes\n[3]: https://github.com/sighingnow/jekyll-gitbook/fork\n[4]: https://github.com/allejo/jekyll-toc\n[5]: https://github.com/gitbook-plugins/gitbook-plugin-search-pro\n[6]: https://github.com/rouge-ruby/rouge/tree/master/lib/rouge/themes\n[7]: https://analytics.google.com/analytics/web/\n[8]: https://www.cnzz.com/\n[9]: https://docs.microsoft.com/en-us/azure/azure-monitor/app/app-insights-overview\n[10]: https://github.com/sighingnow/jekyll-gitbook/blob/master/gitbook/custom.css\n[11]: https://discordjs.guide/popular-topics/canvas.html#setting-up-napi-rs-canvas\n[12]: https://rubygems.org/gems/jekyll-remote-theme\n[13]: https://docs.github.com/en/pages/setting-up-a-github-pages-site-with-jekyll/adding-a-theme-to-your-github-pages-site-using-jekyll\n[14]: https://github.com/sighingnow/jekyll-gitbook/blob/master/_config.yml\n[15]: https://jekyllrb.com/docs/collections/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsighingnow%2Fjekyll-gitbook","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsighingnow%2Fjekyll-gitbook","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsighingnow%2Fjekyll-gitbook/lists"}