{"id":15703916,"url":"https://github.com/klane/jekyllnb","last_synced_at":"2025-07-01T14:10:12.094Z","repository":{"id":33201578,"uuid":"154242690","full_name":"klane/jekyllnb","owner":"klane","description":"Convert Jupyter Notebooks to Jekyll-ready Markdown","archived":false,"fork":false,"pushed_at":"2025-05-19T17:54:27.000Z","size":860,"stargazers_count":20,"open_issues_count":6,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-05-19T18:47:38.503Z","etag":null,"topics":["convert-jupyter-notebooks","jekyll","jupyter-notebook","nbconvert","python"],"latest_commit_sha":null,"homepage":"https://jekyllnb.readthedocs.io","language":"Python","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/klane.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,"zenodo":null}},"created_at":"2018-10-23T01:35:40.000Z","updated_at":"2025-04-13T07:40:30.000Z","dependencies_parsed_at":"2023-12-25T20:27:44.556Z","dependency_job_id":"0e0ffed9-1b36-4358-b5c4-6b1ea0095c78","html_url":"https://github.com/klane/jekyllnb","commit_stats":{"total_commits":649,"total_committers":7,"mean_commits":92.71428571428571,"dds":"0.24036979969183359","last_synced_commit":"6ff52617d996fff3711593805e0d48450ce02ed4"},"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/klane/jekyllnb","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/klane%2Fjekyllnb","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/klane%2Fjekyllnb/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/klane%2Fjekyllnb/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/klane%2Fjekyllnb/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/klane","download_url":"https://codeload.github.com/klane/jekyllnb/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/klane%2Fjekyllnb/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260884159,"owners_count":23076875,"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":["convert-jupyter-notebooks","jekyll","jupyter-notebook","nbconvert","python"],"created_at":"2024-10-03T20:08:28.132Z","updated_at":"2025-07-01T14:10:12.073Z","avatar_url":"https://github.com/klane.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# JekyllNB: Jupyter Notebooks to Jekyll Markdown\n\n[![Tests](https://github.com/klane/jekyllnb/actions/workflows/test.yml/badge.svg)](https://github.com/klane/jekyllnb/actions/workflows/test.yml)\n[![Docs](https://img.shields.io/readthedocs/jekyllnb?label=Docs\u0026logo=read%20the%20docs\u0026logoColor=white)](https://jekyllnb.readthedocs.io/en/latest)\n[![Coverage](https://img.shields.io/codecov/c/github/klane/jekyllnb?label=Coverage\u0026logo=codecov)](https://codecov.io/gh/klane/jekyllnb)\n[![Version](https://img.shields.io/pypi/v/jekyllnb?color=blue\u0026label=PyPI\u0026logo=python\u0026logoColor=white)](https://pypi.org/project/jekyllnb)\n[![License](https://img.shields.io/github/license/klane/jekyllnb?color=blue\u0026label=License)](LICENSE)\n\nJekyllNB extends Jupyter's command line tool `nbconvert` to add the Jekyll front matter to Markdown files and save generated images to a desired location.\nThis allows you to easily convert all your notebooks to the required format and immediately build your Jekyll site.\nIt works great in a GitHub Actions workflow to convert your notebooks to Markdown and deploy to GitHub Pages.\nSee JekyllNB in action [here](https://github.com/klane/databall/blob/main/.github/workflows/gh-pages.yml).\n\n## Installation\n\nJekyllNB is available on PyPI and can be installed with `pip`.\n\n```bash\npip install jekyllnb\n```\n\n## Usage\n\nJekyllNB is a Jupyter app just like `nbconvert`. Call it with `jupyter jekyllnb`.\nThe preprocessor reads metadata from your notebook to populate the Jekyll front matter.\nAdd a `jekyll` section to your notebook metadata similar to:\n\n```json\n\"jekyll\": {\n    \"layout\": \"notebook\",\n    \"permalink\": \"/hello/\",\n    \"title\": \"Hello World!\"\n}\n```\n\nThe exporter will add the following front matter to the generated Markdown:\n\n```text\n---\nlayout: notebook\npermalink: /hello/\ntitle: Hello World!\n---\n```\n\n## Options\n\nSince `jekyllnb` extends `nbconvert`, all existing options are supported. The following new options are available:\n\n- `--site-dir`: Root directory of your Jekyll site. Markdown (`page-dir`) and image (`image-dir`) folders will be created here if they do not exist.\n- `--page-dir`: Directory for generated Markdown files (e.g. _pages or _posts).\n- `--image-dir`: Directory for images. Images are organized into folders for each notebook by default.\nAlias for the `nbconvert` option `NbConvertApp.output_files_dir`.\n- `--no-auto-folder`: Flag to turn off the default behavior of organizing images by notebook name within `image-dir`. (default: `false`)\n\n## nbconvert\n\nJekyllNB also supports `nbconvert` by registering an entry point for the exporter.\nYou can use the Jekyll exporter with `nbconvert` by calling `jupyter nbconvert --to jekyll`.\n\n**Note**: The options above are not available with `nbconvert`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fklane%2Fjekyllnb","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fklane%2Fjekyllnb","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fklane%2Fjekyllnb/lists"}