{"id":13399151,"url":"https://github.com/jekyll/jekyll","last_synced_at":"2026-04-02T18:45:27.457Z","repository":{"id":442990,"uuid":"65252","full_name":"jekyll/jekyll","owner":"jekyll","description":":globe_with_meridians: Jekyll is a blog-aware static site generator in Ruby","archived":false,"fork":false,"pushed_at":"2026-03-30T03:56:56.000Z","size":70532,"stargazers_count":51470,"open_issues_count":245,"forks_count":10295,"subscribers_count":1407,"default_branch":"master","last_synced_at":"2026-04-02T10:27:34.103Z","etag":null,"topics":["blog-engine","jekyll","liquid","markdown","ruby","static-site-generator"],"latest_commit_sha":null,"homepage":"https://jekyllrb.com","language":"Ruby","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/jekyll.png","metadata":{"files":{"readme":"README.markdown","changelog":"History.markdown","contributing":".github/CONTRIBUTING.markdown","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.markdown","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":".github/SECURITY.markdown","support":".github/SUPPORT.markdown","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"open_collective":"jekyll","tidelift":"rubygems/jekyll"}},"created_at":"2008-10-20T06:29:03.000Z","updated_at":"2026-04-02T09:05:55.000Z","dependencies_parsed_at":"2024-04-16T14:01:04.090Z","dependency_job_id":"0c560a06-e603-4f36-b004-5c1a104bd2d9","html_url":"https://github.com/jekyll/jekyll","commit_stats":{"total_commits":9711,"total_committers":1217,"mean_commits":7.979457682826623,"dds":0.726598702502317,"last_synced_commit":"dbbfc5d48c81cf424f29c7b0eebf10886bc99904"},"previous_names":["mojombo/jekyll"],"tags_count":160,"template":false,"template_full_name":null,"purl":"pkg:github/jekyll/jekyll","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jekyll%2Fjekyll","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jekyll%2Fjekyll/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jekyll%2Fjekyll/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jekyll%2Fjekyll/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jekyll","download_url":"https://codeload.github.com/jekyll/jekyll/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jekyll%2Fjekyll/sbom","scorecard":{"id":514645,"data":{"date":"2025-08-11","repo":{"name":"github.com/jekyll/jekyll","commit":"40ac06ed3e95325a07868dd2ac419e409af823b6"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":6.4,"checks":[{"name":"Code-Review","score":4,"reason":"Found 12/30 approved changesets -- score normalized to 4","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"8 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:17","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:18","Info: jobLevel 'pull-requests' permission set to 'read': .github/workflows/spelling.yml:55","Info: jobLevel 'actions' permission set to 'read': .github/workflows/spelling.yml:56","Info: jobLevel 'contents' permission set to 'read': .github/workflows/spelling.yml:54","Warn: no topLevel permission defined: .github/workflows/benchmark.yml:1","Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Warn: no topLevel permission defined: .github/workflows/codeql.yml:1","Warn: no topLevel permission defined: .github/workflows/docs.yml:1","Warn: no topLevel permission defined: .github/workflows/release.yml:1","Warn: no topLevel permission defined: .github/workflows/spelling.yml:1","Warn: no topLevel permission defined: .github/workflows/third-party.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: .github/SECURITY.markdown:1","Info: Found linked content: .github/SECURITY.markdown:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: .github/SECURITY.markdown:1","Info: Found text in security policy: .github/SECURITY.markdown:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/benchmark.yml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/jekyll/jekyll/benchmark.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/benchmark.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/jekyll/jekyll/benchmark.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:38: update your workflow using https://app.stepsecurity.io/secureworkflow/jekyll/jekyll/ci.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/jekyll/jekyll/ci.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:80: update your workflow using https://app.stepsecurity.io/secureworkflow/jekyll/jekyll/ci.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:82: update your workflow using https://app.stepsecurity.io/secureworkflow/jekyll/jekyll/ci.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/jekyll/jekyll/codeql.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/jekyll/jekyll/codeql.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yml:50: update your workflow using https://app.stepsecurity.io/secureworkflow/jekyll/jekyll/codeql.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yml:63: update your workflow using https://app.stepsecurity.io/secureworkflow/jekyll/jekyll/codeql.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/jekyll/jekyll/docs.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docs.yml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/jekyll/jekyll/docs.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/jekyll/jekyll/release.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/jekyll/jekyll/release.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/jekyll/jekyll/release.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/spelling.yml:68: update your workflow using https://app.stepsecurity.io/secureworkflow/jekyll/jekyll/spelling.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/third-party.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/jekyll/jekyll/third-party.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/third-party.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/jekyll/jekyll/third-party.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/third-party.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/jekyll/jekyll/third-party.yml/master?enable=pin","Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:6: pin your Docker image by updating ruby:3.0 to ruby:3.0@sha256:dcb8a8a6ee981f949da505cb9f4f15cde696e7bcb088955bc1f92f23a4cd7a72","Warn: downloadThenRun not pinned by hash: .devcontainer/Dockerfile:20-45","Info:   0 out of  11 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   8 third-party GitHubAction dependencies pinned","Info:   0 out of   1 containerImage dependencies pinned","Info:   0 out of   1 downloadThenRun dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":7,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 0 commits out of 13 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-20T01:30:12.803Z","repository_id":442990,"created_at":"2025-08-20T01:30:12.803Z","updated_at":"2025-08-20T01:30:12.803Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31313302,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-02T12:59:32.332Z","status":"ssl_error","status_checked_at":"2026-04-02T12:54:48.875Z","response_time":89,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["blog-engine","jekyll","liquid","markdown","ruby","static-site-generator"],"created_at":"2024-07-30T19:00:34.666Z","updated_at":"2026-04-02T18:45:27.451Z","avatar_url":"https://github.com/jekyll.png","language":"Ruby","readme":"# [Jekyll](https://jekyllrb.com/)\n\n[![Gem Version](https://img.shields.io/gem/v/jekyll.svg)][ruby-gems]\n[![Build Status](https://github.com/jekyll/jekyll/workflows/Continuous%20Integration/badge.svg)][ci-workflow]\n[![Backers on Open Collective](https://opencollective.com/jekyll/backers/badge.svg)](#backers)\n[![Sponsors on Open Collective](https://opencollective.com/jekyll/sponsors/badge.svg)](#sponsors)\n\n[ruby-gems]: https://rubygems.org/gems/jekyll\n[ci-workflow]: https://github.com/jekyll/jekyll/actions?query=workflow%3A%22Continuous+Integration%22+branch%3Amaster\n[appveyor]: https://ci.appveyor.com/project/jekyll/jekyll/branch/master\n\nJekyll is a simple, blog-aware, static site generator perfect for personal, project, or organization sites. Think of it like a file-based CMS, without all the complexity. Jekyll takes your content, renders Markdown and Liquid templates, and spits out a complete, static website ready to be served by Apache, Nginx or another web server. Jekyll is the engine behind [GitHub Pages](https://pages.github.com), which you can use to host sites right from your GitHub repositories.\n\n## Philosophy\n\nJekyll does what you tell it to do — no more, no less. It doesn't try to outsmart users by making bold assumptions, nor does it burden them with needless complexity and configuration. Put simply, Jekyll gets out of your way and allows you to concentrate on what truly matters: your content.\n\nSee: [https://jekyllrb.com/philosophy](https://jekyllrb.com/philosophy)\n\n## Getting Started\n\n* [Install](https://jekyllrb.com/docs/installation/) the gem\n* Read up about its [Usage](https://jekyllrb.com/docs/usage/) and [Configuration](https://jekyllrb.com/docs/configuration/)\n* Take a gander at some existing [Sites](https://github.com/jekyll/jekyll/wiki/sites)\n* [Fork](https://github.com/jekyll/jekyll/fork) and [Contribute](https://jekyllrb.com/docs/contributing/) your own modifications\n* Have questions? Check out our official forum community [Jekyll Talk](https://talk.jekyllrb.com/) and [`#jekyll` Channel on Libera IRC](https://libera.chat)\n\n## Diving In\n\n* [Migrate](https://import.jekyllrb.com/docs/home/) from your previous system\n* Learn how [Front Matter](https://jekyllrb.com/docs/front-matter/) works\n* Put information on your site with [Variables](https://jekyllrb.com/docs/variables/)\n* Customize the [Permalinks](https://jekyllrb.com/docs/permalinks/) your posts are generated with\n* Use the built-in [Liquid Extensions](https://jekyllrb.com/docs/templates/) to make your life easier\n* Use custom [Plugins](https://jekyllrb.com/docs/plugins/) to generate content specific to your site\n* Watch [video tutorials from Giraffe Academy](https://jekyllrb.com/tutorials/video-walkthroughs/)\n\n## Need help?\n\nIf you don't find the answer to your problem in our [docs](https://jekyllrb.com/docs/), or in the [troubleshooting section](https://jekyllrb.com/docs/troubleshooting/), ask the [community](https://jekyllrb.com/docs/community/) for help.\n\n## Code of Conduct\n\nIn order to have a more open and welcoming community, Jekyll adheres to a\n[code of conduct](https://jekyllrb.com/docs/conduct/) adapted from the Ruby on Rails code of\nconduct.\n\nPlease adhere to this code of conduct in any interactions you have in the\nJekyll community. It is strictly enforced on all official Jekyll\nrepositories, websites, and resources. If you encounter someone violating\nthese terms, please let one of our [core team members](https://jekyllrb.com/team/#core-team) know and we will address it as soon as possible.\n\n## Credits\n\n### Sponsors\n\nSupport this project by becoming a sponsor. Your logo will show up in this README with a link to your website. [Become a sponsor!](https://opencollective.com/jekyll#sponsor)\n[![Jekyll Sponsor 0](https://opencollective.com/jekyll/sponsor/0/avatar.svg)](https://opencollective.com/jekyll/sponsor/0/website)\n[![Jekyll Sponsor 1](https://opencollective.com/jekyll/sponsor/1/avatar.svg)](https://opencollective.com/jekyll/sponsor/1/website)\n[![Jekyll Sponsor 2](https://opencollective.com/jekyll/sponsor/2/avatar.svg)](https://opencollective.com/jekyll/sponsor/2/website)\n[![Jekyll Sponsor 3](https://opencollective.com/jekyll/sponsor/3/avatar.svg)](https://opencollective.com/jekyll/sponsor/3/website)\n[![Jekyll Sponsor 4](https://opencollective.com/jekyll/sponsor/4/avatar.svg)](https://opencollective.com/jekyll/sponsor/4/website)\n[![Jekyll Sponsor 5](https://opencollective.com/jekyll/sponsor/5/avatar.svg)](https://opencollective.com/jekyll/sponsor/5/website)\n[![Jekyll Sponsor 6](https://opencollective.com/jekyll/sponsor/6/avatar.svg)](https://opencollective.com/jekyll/sponsor/6/website)\n[![Jekyll Sponsor 7](https://opencollective.com/jekyll/sponsor/7/avatar.svg)](https://opencollective.com/jekyll/sponsor/7/website)\n[![Jekyll Sponsor 8](https://opencollective.com/jekyll/sponsor/8/avatar.svg)](https://opencollective.com/jekyll/sponsor/8/website)\n[![Jekyll Sponsor 9](https://opencollective.com/jekyll/sponsor/9/avatar.svg)](https://opencollective.com/jekyll/sponsor/9/website)\n\n### Contributors\n\nThis project exists thanks to all the people who contribute.\n[![Jekyll Contributors](https://opencollective.com/jekyll/contributors.svg?width=890\u0026\u0026avatarHeight=24\u0026limit=100\u0026button=false)](../../graphs/contributors)\n\n### Backers\n\nThank you to all our backers! 🙏 [Become a backer](https://opencollective.com/jekyll#backer)\n\n[![Jekyll Backers](https://opencollective.com/jekyll/backers.svg?width=890)](https://opencollective.com/jekyll#backers)\n\n## License\n\nSee the [LICENSE](https://github.com/jekyll/jekyll/blob/master/LICENSE) file.\n","funding_links":["https://opencollective.com/jekyll","https://tidelift.com/funding/github/rubygems/jekyll"],"categories":["Ruby","jQuery","Credits","Projects","Happy Exploring 🤘","🌱 Credits","[Ruby](#ruby)","Web Development","Uncategorized","Static Site Generators","前端开发框架及项目","Apps","Awesome Tools","jekyll","markdown","Markdown Building Blocks","Static Page Generation","Repository app","By Language","Web","网站生成与排版"],"sub_categories":["RESTful","C++/C Toolkit","Step 2) Edit `_config.yml` to customize","Uncategorized","Uptime Monitoring","其他_文本生成、文本对话","Writing","9. Modifying Element Usage","Blogging","Markdown to Website / Blog","Ruby","Static website generator","静态网站"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjekyll%2Fjekyll","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjekyll%2Fjekyll","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjekyll%2Fjekyll/lists"}