{"id":25629378,"url":"https://github.com/adriantanasa/github-wiki-sidebar","last_synced_at":"2026-06-10T11:30:13.171Z","repository":{"id":47041332,"uuid":"112603692","full_name":"adriantanasa/github-wiki-sidebar","owner":"adriantanasa","description":"Github Wiki sidebar menu builder with multi-level, ordering and exclusion list support","archived":false,"fork":false,"pushed_at":"2021-09-16T03:51:20.000Z","size":26,"stargazers_count":187,"open_issues_count":14,"forks_count":30,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-02-14T18:01:43.890Z","etag":null,"topics":["github","github-wiki","github-wiki-sidebar","markdown-converter","navigation"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/adriantanasa.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}},"created_at":"2017-11-30T11:30:02.000Z","updated_at":"2025-01-10T02:40:35.000Z","dependencies_parsed_at":"2022-08-27T16:31:04.975Z","dependency_job_id":null,"html_url":"https://github.com/adriantanasa/github-wiki-sidebar","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adriantanasa%2Fgithub-wiki-sidebar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adriantanasa%2Fgithub-wiki-sidebar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adriantanasa%2Fgithub-wiki-sidebar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adriantanasa%2Fgithub-wiki-sidebar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/adriantanasa","download_url":"https://codeload.github.com/adriantanasa/github-wiki-sidebar/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240222472,"owners_count":19767461,"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":["github","github-wiki","github-wiki-sidebar","markdown-converter","navigation"],"created_at":"2025-02-22T19:17:18.356Z","updated_at":"2026-06-10T11:30:13.020Z","avatar_url":"https://github.com/adriantanasa.png","language":"JavaScript","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"readme":"# github-wiki-sidebar\n\n[![NPM Version][npm-image]][npm-url]\n[![NPM Downloads][downloads-image]][downloads-url]\n\nGithub Wiki sidebar menu generator with support for multi-level items, ordering, exclude list and re-usable options between executions. Can be used also to generate a TOC for a markdown (.md files) based project.\n\n## Features:\n\n* generates markdown menu starting from the Github Wiki pages (_Sidebar.md)\n* step by step execution with user input (inquirer.js) for the job configuration\n* option to automatically push changes to the git wiki origin repository\n* option for the ordering of the menu items\n* selection of files to add to an exclusion list\n* option to define a template for the generated menu (add logo, text etc to the sidebar)\n* persist all the options between the job executions\n* option for multi-level menus based on the user-defined category separator\n\n![github wiki sidebar generated by github-wiki-sidebar](https://raw.githubusercontent.com/wiki/adriantanasa/github-wiki-sidebar/images/github-wiki-sidebar-generator.png)\n\nSee examples of sidebar menu generated by this module at [github-wiki-sidebar's Wiki](https://github.com/adriantanasa/github-wiki-sidebar/wiki) and more in the *Examples* section (as [AngularJS](https://github.com/angular/angular.js/wiki), [ng-bootstrap](https://github.com/ng-bootstrap/ng-bootstrap/wiki), etc.)\n\n## Installation\n\n```shell\nnpm install github-wiki-sidebar -g\n```\n\n## Usage\n\n```shell\ngithub-wiki-sidebar --git-push\n```\n\nStarts the step by step enquire mode, reuses any previously saved configuration, generates the options.json and \\_Sidebar.md files and pushes the updates to git _origin_ repository.\n\n## Modifiers:\n\n**--silent**\n\nUpdates _Sidebar.md file based on the local option.json file\n\n**--git-push**\n\nUpdates locally the wiki git repository then executes github-wiki-sidebar job and finally pushes updates menu and configuration file back to the remote repository (_origin_) .\n\n**--skip-options**\n\nRemove the options.json file after execution\n\n**--skip-sidebar**\n\n Dry-run - Not generating the _Sidebar.md file\n\n## End-to-End Scenario\n**Configure the job**\n* clone locally your wiki repository\n* execute the job in default mode (optionally with git push _--git-push_)\n\n**Updating sidebar menu**\n\n* if there is no need to update the options for the job - run in _--silent_ mode (recommended for automation - integration with GitHub hooks\n* when updates are needed - execute the job with the default parameters (_--enquire_) mode - hit \u003cENTER\u003e to leave the previously changed options unchanged.\n\nExample for a public wiki:\n\n```shell\ngit clone https://github.com/adriantanasa/github-wiki-sidebar.wiki.git\ncd github-wiki-sidebar.wiki\ngithub-wiki-sidebar --git-push\n```\n\n```shell\n# updating the sidebar menu\ngithub-wiki-sidebar --silent --git-push\n```\n\n[![Generate custom GitHub wiki sidebar with order and custom template - asciicast](https://asciinema.org/a/vhcfzXYJclbJqRI2zU1exDQwh.png)](https://asciinema.org/a/vhcfzXYJclbJqRI2zU1exDQwh)\n\n\n### Debug\n\n```shell\nexport DEBUG=github-wiki-sidebar;github-wiki-sidebar\n```\n\n## Options available in init/tutorial mode\n\n**Define the category separator for multi-level menu: (: )**\n\nChange the sequence to break titles into categories (default to \":-\"). Users on Windows operating system have to choose a different separator for categories as the colon (:) is not accepted as a file separator.\n\n**Define the format of the page links: (./%s)**\n\nAllows the user to change the links to a different format (default is relative). A full URI could be used for ex:  ```https://github.com/adriantanasa/github-wiki-sidebar/wiki/%s```\n\n**Define the _Sidebar.md content template: (%s)**\n\nYou can add markdown content before/after menu content - use this step to add for example a logo. The %s will be replaced with the content of the menu:\n\n```\n[![npm module\\](https://rawgit.com/wiki/adriantanasa/gi\nthub-wiki-sidebar/images/github-wiki-sidebar.svg)](https://www.npmjs.com/package/github-wiki-side\nbar)\\n\\n%s\n```\n\n**Select the items to be excluded from menu: (Press \\\u003cspace\\\u003e to select, \\\u003ca\\\u003e to toggle all, \\\u003ci\\\u003e to invert selection)**\nProvides a checkable list with all the .md files available. Use SPACE to add items to the exlusion list. Checking a top category - ex: ```Categ1.md``` - will exclude all the subpages from the menu - as ```Categ1: Subpage1.md```, ```Categ1: Subpage2: Subsubpage1.md```\n\n**Change the priority/order of the items in menu (ex: 3 4 0): n**\n\nThe list of local *.md files are displayed with numeric indexes - here you can specify in a space separated list the priority for them in the menu. By default, the script is looking for the position of Home.md (if any) in your local folder and adding it with the highest priority.\n\n## Recipes\n\n### Add a logo to your menu\n\nExecute the script in init mode and at the *Select the _Sidebar.md content template: %s* change the default template with one that will include the logo:\n\n```markdown\n![my Company Logo Alt text](https://somepublicdomain.com/path/to/my/image.png)\\n\\n%s\n```\n\nYou can also add your image directly to wiki repository and reference it directly in your template.\n\n## Contribution\n\nCheck [Roadmap](https://github.com/adriantanasa/github-wiki-sidebar/wiki/Roadmap) for planned items.\n\nWe are welcoming contributors - feel free to create issues and help improve the tool. Also if you have a public wiki generated with this module please add it to README.md Examples section.\n\n## Examples\n\nGitHub wiki menus generated with this module:\n\n* [AngularJS Wiki](https://github.com/angular/angular.js/wiki)\n* [ng-bootstrap Wiki](https://github.com/ng-bootstrap/ng-bootstrap/wiki)\n* [React.js Wiki](https://github.com/facebook/react/wiki)\n* [ShellJS Wiki](https://github.com/shelljs/shelljs/wiki)\n* [Synful Wiki](https://github.com/nathan-fiscaletti/synful/wiki)\n\n\n[npm-image]: https://img.shields.io/npm/v/github-wiki-sidebar.svg\n[npm-url]: https://npmjs.org/package/github-wiki-sidebar\n[downloads-image]: https://img.shields.io/npm/dm/github-wiki-sidebar.svg\n[downloads-url]: https://npmjs.org/package/github-wiki-sidebar\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadriantanasa%2Fgithub-wiki-sidebar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadriantanasa%2Fgithub-wiki-sidebar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadriantanasa%2Fgithub-wiki-sidebar/lists"}