# `bookit`
> Doc site generator
[![pypi](https://img.shields.io/pypi/v/bookit?style=for-the-badge)](https://pypi.org/project/bookit/)
## Overview
This Python program converts all files in a Git repository to markdown files. It's useful for creating doc sites of your code.
The converted markdown files are placed in a `.bookit` subdirectory. The directory structure inside `.bookit` is an exact mirror of the original repository.
## Usage
```bash
python -m bookit /path/to/your/repo
```
## How it works
Each file is converted into a markdown file, with the file name being the `#title` of the markdown file and the contents of the original file placed inside a code block, highlighted according to the original file's language.
Here's an example of the directory structure transformation:
Before:
```bash
repo/
├── README.md
├── file1.py
├── file2.js
```
After:
```bash
repo/
├── .bookit/
│ ├── file1.py.md
│ └── file2.py.md
├── README.md
├── file1.py
└── file2.js
```
## DEV
### Setup
```bash
make install
```
This will setup a virtualenv, upgrade pip, install dependencies, and install pre-commit
**note**: This does not activate your virtualenv! You must run `source env/bin/activate` to use the venv.
### Test
```bash
make test
```
### Format
```bash
make format
```
```bash
make lint
```
### Version & Release
```bash
make version-<major/minor/patch>
```
```bash
make release
```
**note** Don't forget to `git push` with `--tags`
### pre-commit
#### Setup
```bash
make install-pre-commit
```
#### Run all
```bash
make pre-commit
```
Raw data
{
"_id": null,
"home_page": "https://github.com/agmoss/bookit",
"name": "bookit",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": "",
"keywords": "",
"author": "Andrew Moss",
"author_email": "andrew@m0ss.dev",
"download_url": "https://files.pythonhosted.org/packages/60/f9/a4dba7f458f03ca64ef86dc570d581a981d6763dae7e5f88f2872987a28c/bookit-0.0.5.tar.gz",
"platform": null,
"description": "# `bookit`\n\n> Doc site generator\n\n[![pypi](https://img.shields.io/pypi/v/bookit?style=for-the-badge)](https://pypi.org/project/bookit/)\n\n## Overview\n\nThis Python program converts all files in a Git repository to markdown files. It's useful for creating doc sites of your code.\n\nThe converted markdown files are placed in a `.bookit` subdirectory. The directory structure inside `.bookit` is an exact mirror of the original repository.\n\n## Usage\n\n```bash\npython -m bookit /path/to/your/repo\n```\n\n## How it works\n\nEach file is converted into a markdown file, with the file name being the `#title` of the markdown file and the contents of the original file placed inside a code block, highlighted according to the original file's language.\n\nHere's an example of the directory structure transformation:\n\nBefore:\n\n```bash\nrepo/\n\u251c\u2500\u2500 README.md\n\u251c\u2500\u2500 file1.py\n\u251c\u2500\u2500 file2.js\n```\n\nAfter:\n\n```bash\nrepo/\n\u251c\u2500\u2500 .bookit/\n\u2502 \u251c\u2500\u2500 file1.py.md\n\u2502 \u2514\u2500\u2500 file2.py.md\n\u251c\u2500\u2500 README.md\n\u251c\u2500\u2500 file1.py\n\u2514\u2500\u2500 file2.js\n```\n\n## DEV\n\n### Setup\n\n```bash\nmake install\n```\n\nThis will setup a virtualenv, upgrade pip, install dependencies, and install pre-commit\n\n**note**: This does not activate your virtualenv! You must run `source env/bin/activate` to use the venv.\n\n### Test\n\n```bash\nmake test\n```\n\n### Format\n\n```bash\nmake format\n```\n\n```bash\nmake lint\n```\n\n### Version & Release\n\n```bash\nmake version-<major/minor/patch>\n```\n\n```bash\nmake release\n```\n\n**note** Don't forget to `git push` with `--tags`\n\n### pre-commit\n\n#### Setup\n\n```bash\nmake install-pre-commit\n```\n\n#### Run all\n\n```bash\nmake pre-commit\n```\n\n\n",
"bugtrack_url": null,
"license": "MIT license",
"summary": "Doc site generator",
"version": "0.0.5",
"project_urls": {
"Homepage": "https://github.com/agmoss/bookit"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "60f9a4dba7f458f03ca64ef86dc570d581a981d6763dae7e5f88f2872987a28c",
"md5": "9b5001a6c6257d2a0e28f81a2afcdd74",
"sha256": "bf64e64f0f61461bab16c03855add600884b9e004e6f282ffaa45d4cc1025cd8"
},
"downloads": -1,
"filename": "bookit-0.0.5.tar.gz",
"has_sig": false,
"md5_digest": "9b5001a6c6257d2a0e28f81a2afcdd74",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 4416,
"upload_time": "2023-07-16T19:42:31",
"upload_time_iso_8601": "2023-07-16T19:42:31.577555Z",
"url": "https://files.pythonhosted.org/packages/60/f9/a4dba7f458f03ca64ef86dc570d581a981d6763dae7e5f88f2872987a28c/bookit-0.0.5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-07-16 19:42:31",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "agmoss",
"github_project": "bookit",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "bookit"
}