{"id":15057039,"url":"https://github.com/airtai/nbdev-mkdocs","last_synced_at":"2025-04-10T11:11:06.580Z","repository":{"id":61756398,"uuid":"544969330","full_name":"airtai/nbdev-mkdocs","owner":"airtai","description":"Extension to nbdev for generating docs with Material for Mkdocs","archived":false,"fork":false,"pushed_at":"2024-02-23T10:28:09.000Z","size":9869,"stargazers_count":15,"open_issues_count":22,"forks_count":2,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-04-28T02:39:44.374Z","etag":null,"topics":["mkdocs","mkdocs-material","nbdev"],"latest_commit_sha":null,"homepage":"https://nbdev-mkdocs.airt.ai","language":"Jupyter Notebook","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/airtai.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}},"created_at":"2022-10-03T14:55:09.000Z","updated_at":"2024-04-12T14:15:59.000Z","dependencies_parsed_at":"2024-02-23T10:42:55.911Z","dependency_job_id":null,"html_url":"https://github.com/airtai/nbdev-mkdocs","commit_stats":{"total_commits":140,"total_committers":6,"mean_commits":"23.333333333333332","dds":0.4214285714285714,"last_synced_commit":"94304eff3f919b50c03a11ae2c4b0520f6a1ce51"},"previous_names":[],"tags_count":19,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/airtai%2Fnbdev-mkdocs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/airtai%2Fnbdev-mkdocs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/airtai%2Fnbdev-mkdocs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/airtai%2Fnbdev-mkdocs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/airtai","download_url":"https://codeload.github.com/airtai/nbdev-mkdocs/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248208561,"owners_count":21065202,"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":["mkdocs","mkdocs-material","nbdev"],"created_at":"2024-09-24T22:01:13.551Z","updated_at":"2025-04-10T11:11:06.562Z","avatar_url":"https://github.com/airtai.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Material for nbdev\n\n\u003c!-- WARNING: THIS FILE WAS AUTOGENERATED! DO NOT EDIT! --\u003e\n\n![](https://raw.githubusercontent.com/airtai/nbdev-mkdocs/main/nbs/images/nbdev_mkdocs_banner_img.png)\n\n------------------------------------------------------------------------\n\n**Documentation**: https://nbdev-mkdocs.airt.ai\n\n**Source Code**: https://github.com/airtai/nbdev-mkdocs\n\n------------------------------------------------------------------------\n\n## Getting Started\n\n![PyPI](https://img.shields.io/pypi/v/nbdev-mkdocs.png) ![PyPI -\nDownloads](https://img.shields.io/pypi/dm/nbdev-mkdocs.png) ![PyPI -\nPython Version](https://img.shields.io/pypi/pyversions/nbdev-mkdocs.png)\n\n![GitHub Workflow\nStatus](https://img.shields.io/github/actions/workflow/status/airtai/nbdev-mkdocs/test.yaml)\n\n![CodeQL](https://github.com/airtai/nbdev-mkdocs/actions/workflows/codeql.yml/badge.svg)\n![Dependency\nReview](https://github.com/airtai/nbdev-mkdocs/actions/workflows/dependency-review.yml/badge.svg)\n\n![GitHub](https://img.shields.io/github/license/airtai/nbdev-mkdocs.png)\n\n------------------------------------------------------------------------\n\n**Material for nbdev** is a\n\u003ca href=\"https://nbdev.fast.ai/\" target=\"_blank\"\u003enbdev\u003c/a\u003e extension\nthat allows you to use\n\u003ca href=\"https://squidfunk.github.io/mkdocs-material/\" target=\"_blank\"\u003eMaterial\nfor MkDocs\u003c/a\u003e to generate documentation for nbdev projects.\n\nThe key features are:\n\n- **Material style documentation**: Effortlessly create material style\n  documentation for your nbdev projects with Material for MkDocs, a\n  theme that provides a sleek and modern design for your documentation.\n- **Auto generate docstrings**: Instantly generate docstrings for your\n  Python code using\n  \u003ca href=\"https://docstring-gen.airt.ai/\" target=\"_blank\"\u003edocstring-gen\u003c/a\u003e\n  library, a tool that automatically generates docstrings for your\n  functions and classes using Codex.\n- **Create stunning social media share images**: Boost your project’s\n  visibility by creating striking social share images using DALL-E.\n- **Customizability**: Add guides, release notes, customise the\n  navigation menu and configure the Material for MkDocs easily to suit\n  your project needs. With this documentation tool, you have more\n  control over the look and feel of your documentation, allowing you to\n  create a unique and personalized experience for your users.\n\n### Workflow\n\nHere’s a quick comparison of Quarto and Material for nbdev development\nworkflows:\n\n\u003c!-- | **Quarto workflow**  | **Material for nbdev workflow**   |\n|---    |---    |\n| Install:\u003cbr\u003e\u003e pip install notebook nbdev\u003cbr\u003e\u003e nbdev_install_quarto    | Install:\u003cbr\u003e\u003e pip install notebook nbdev\u003cbr\u003e\u003e nbdev_install_quarto\u003cbr\u003e**\u003e pip install nbdev-mkdocs**  |\n| Setup:\u003cbr\u003e\u003e nbdev_new\u003cbr\u003e\u003e nbdev_install_hooks\u003cbr\u003e\u003e vi settings.ini\u003cbr\u003e\u003e pip install -e '.[dev]'  | Setup:\u003cbr\u003e\u003e nbdev_new\u003cbr\u003e\u003e nbdev_install_hooks\u003cbr\u003e\u003e vi settings.ini\u003cbr\u003e\u003e pip install -e '.[dev]'\u003cbr\u003e**\u003e nbdev_mkdocs new**\u003cbr\u003e**\u003e vi mkdocs/mkdocs.yml**  |\n| Development:\u003cbr\u003e# Edit files\u003cbr\u003e\u003e nbdev_preview   | Development:\u003cbr\u003e# Edit files\u003cbr\u003e**\u003e nbdev_mkdocs preview**\u003cbr\u003e    |\n| Commit changes:\u003cbr\u003e\u003e nbdev_prepare\u003cbr\u003e\u003e git commit -am “Commit message”\u003cbr\u003e\u003e git push     | Commit changes:\u003cbr\u003e**\u003e nbdev_mkdocs prepare**\u003cbr\u003e\u003e git commit -am “Commit message”\u003cbr\u003e\u003e git push  | --\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003e\n\u003cstrong\u003eQuarto workflow\u003c/strong\u003e\n\u003c/th\u003e\n\u003cth\u003e\n\u003cstrong\u003eMaterial for nbdev workflow\u003c/strong\u003e\n\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\n\nInstall:\n\n``` shell\n$ pip install notebook nbdev\n$ nbdev_install_quarto\n```\n\n\u003c/td\u003e\n\u003ctd\u003e\n\nInstall:\n\n``` shell\n$ pip install notebook nbdev\n$ nbdev_install_quarto\n$ pip install nbdev-mkdocs\n```\n\n\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\n\nSetup:\n\n``` shell\n$ nbdev_new\n$ nbdev_install_hooks\n$ vi settings.ini\n$ pip install -e '.[dev]'\n```\n\n\u003c/td\u003e\n\u003ctd\u003e\n\nSetup:\n\n``` shell\n$ nbdev_new\n$ nbdev_install_hooks\n$ vi settings.ini\n$ pip install -e '.[dev]'\n$ nbdev_mkdocs new\n$ vi mkdocs/mkdocs.yml\n```\n\n\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\n\nDevelopment:\n\n``` shell\n# Edit files\n$ nbdev_preview\n```\n\n\u003c/td\u003e\n\u003ctd\u003e\n\nDevelopment:\n\n``` shell\n# Edit files\n$ nbdev_mkdocs preview\n```\n\n\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\n\nCommit changes:\n\n``` shell\n$ nbdev_prepare\n$ git commit -am “Commit message”\n$ git push\n```\n\n\u003c/td\u003e\n\u003ctd\u003e\n\nCommit changes:\n\n``` shell\n$ nbdev_mkdocs prepare\n$ git commit -am “Commit message”\n$ git push\n```\n\n\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\n### Quick start\n\nThe following quick start guide will walk you through installing and\nconfiguring nbdev-mkdocs for an existing nbdev project. It also assumes\nyou’ve already initialized your project with nbdev and installed all of\nthe required libraries.\n\nFor detailed installation instructions and configuration options, please\nsee the\n\u003ca href=\"https://nbdev-mkdocs.airt.ai/latest/guides/Basic_User_Guide/\"\u003eUser\nGuide\u003c/a\u003e.\n\n### Install\n\nnbdev-mkdocs is published as a Python package and can be installed with\npip:\n\n``` shell\npip install nbdev-mkdocs\n```\n\nNote that `nbdev-mkdocs` must be installed in the same Python\nenvironment as nbdev.\n\nIf the installation was successful, you should now have the\n**nbdev-mkdocs** installed on your system. Run the below command from\nthe terminal to see the full list of available commands:\n\n``` shell\nnbdev_mkdocs --help\n```\n\n                                                                                    \n     Usage: nbdev_mkdocs [OPTIONS] COMMAND [ARGS]...                                \n                                                                                    \n    ╭─ Options ────────────────────────────────────────────────────────────────────╮\n    │ --install-completion          Install completion for the current shell.      │\n    │ --show-completion             Show completion for the current shell, to copy │\n    │                               it or customize the installation.              │\n    │ --help                        Show this message and exit.                    │\n    ╰──────────────────────────────────────────────────────────────────────────────╯\n    ╭─ Commands ───────────────────────────────────────────────────────────────────╮\n    │ delete-pre-release-docs  Deletes deployed pre-release documentation          │\n    │                          versions.                                           │\n    │ docs                     Prepares files in 'mkdocs/docs' and then runs       │\n    │                          'mkdocs build' command on them.                     │\n    │ docstring                Command for adding docstrings to classes and        │\n    │                          methods that don't have one using docstring-gen     │\n    │                          library.                                            │\n    │ new                      Creates files in 'mkdocs' subdirectory needed for   │\n    │                          other 'nbdev_mkdocs' subcommands.                   │\n    │ prepare                  Runs tests and prepares files in 'mkdocs/docs' and  │\n    │                          then runs 'mkdocs build' command on them.           │\n    │ preview                  Prepares files in 'mkdocs/docs' and then runs       │\n    │                          'mkdocs serve' command on them.                     │\n    │ readme                   Updates the README.md file from the 'readme_nb'     │\n    │                          notebook. Unless explicitly changed in the          │\n    │                          settings.ini file, the 'readme_nb' points to the    │\n    │                          'index.ipynb' notebook in the 'nbs_path' directory. │\n    │ social-image             Command for generating a custom social share image. │\n    ╰──────────────────────────────────────────────────────────────────────────────╯\n\n#### Setup\n\nAfter installing nbdev-mkdocs, bootstrap your project documentation by\nexecuting the following command from the project’s root directory:\n\n``` shell\nnbdev_mkdocs new\n```\n\nUsing information from the project’s settings.ini file, the above\ncommand creates files and directories required to build the\ndocumentation and saves it in the **mkdocs** subdirectory.\n\nNote: You should only run the **nbdev_mkdocs new** command once for the\nproject to initialise the files required for building Material for\nMkDocs documentation.\n\n#### Preview changes\n\nnbdev_mkdocs lets you preview your changes as you write your\ndocumentation. Execute the following command from the project root\ndirectory to start a local server, and preview your documentation:\n\n**Note**: If you haven’t already installed your library locally, run\n`pip install -e '.[dev]'` command before running the\n`nbdev_mkdocs prepare` command.\n\n``` shell\nnbdev_mkdocs preview\n```\n\n#### Prepare changes\n\nTo prepare your changes for Git push, we recommend executing the\nfollowing commands:\n\nFirst, run the `nbdev_mkdocs prepare` command in the terminal. This\ncommand exports the library, runs tests, and cleans the notebooks.\n\n``` shell\nnbdev_mkdocs prepare\n```\n\nThen, run the `nbdev_mkdocs readme` command to update the README.md file\nfrom the ‘readme_nb’ notebook. By default, ‘readme_nb’ points to\n‘index.ipynb’ notebook in the ‘nbs_path’ unless modified in the\nsettings.ini file.\n\nThis command does everything the ‘nbdev_readme’ command does, plus it\ngenerates symbol references that are compatible with ‘Material for\nnbdev’.\n\n``` shell\nnbdev_mkdocs readme\n```\n\nFinally, double-check your settings.ini file to ensure that it has all\nof the correct information. Then commit and push your additions to\nGitHub:\n\n``` shell\ngit commit -am'Commit Message'\ngit push\n```\n\n## Copyright\n\nCopyright © 2022 onwards airt technologies ltd, Inc.\n\n## License\n\nThis project is licensed under the terms of the [Apache License\n2.0](https://github.com/airtai/nbdev-mkdocs/blob/main/LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fairtai%2Fnbdev-mkdocs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fairtai%2Fnbdev-mkdocs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fairtai%2Fnbdev-mkdocs/lists"}