Skip to main content

A docs generation package for the Sample Programs repo

Project description

The Sample Programs Docs Generator

Previously known as the Sample Programs Wiki Generator, the Sample Programs Docs Generator repo houses the generator.py script which we use in the Sample Programs repository to generate our documentation. The script is automated by a GitHub Actions build in the Sample Programs repo.

If you would like to propose a change, feel free to leverage the issues tab or make a pull request.

How It Works

The generator.py script works by analyzing the information in the Sample Programs repository and storing that information in objects. These objects are then used to generate various documentation pages in Markdown.

What is Automated

Currently, the script does two things:

  • It maintains our entire Sample Programs wiki
  • It maintains all of our READMEs in the Sample Programs repo

In terms of wiki automation, it generates 27 pages: 1 alphabet catalog and 26 alphabet pages.

The alphabet catalog contains a table with links to each alphabet page as well as metadata like the number of scripts and languages per letter. In addition, the alphabet catalog contains the total number of scripts and languages for the entire repo.

Each alphabet page contains a table which lists each language for that particular letter as well as metadata like the number of scripts per language as well as linking to articles and issues.

How to Run

At this time, the wiki generator is hardcoded for the Sample Programs repo. In order to run it, you can install it as a package using pip:

pip install generate_docs

After that, you'll need a copy of the Sample Programs repo:

git clone https://github.com/TheRenegadeCoder/sample-programs.git

Finally, you can build the wiki using the following command:

wikig /path/to/sample-programs/repo/archive

Likewise, you can build the READMEs using the following command:

wikir /path/to/sample-programs/repo/archive

Alternatively, you can clone this repo to run the generate_wiki.py script directly:

python generator.py /path/to/sample-programs/repo/archive

Both solutions are designed to handle repo exploration from the /archive/ directory. If successful, you should begin to see print statements for the various links under test for The Renegade Coder. When finished, you'll have a /wiki/ directory next to your script which contains the wiki. Likewise, all the READMEs should be updated.

At this point, you can push the wiki directly to the Sample Programs wiki.

Recently, as of 2.3.0, this script has been expanded to support projects outside of the Sample Programs repo. For example, this code now supports the automated generation of the How to Python repo as follows:

wikih

That's it!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

generate_docs-2.6.1.tar.gz (20.7 kB view details)

Uploaded Source

Built Distribution

generate_docs-2.6.1-py3-none-any.whl (21.3 kB view details)

Uploaded Python 3

File details

Details for the file generate_docs-2.6.1.tar.gz.

File metadata

  • Download URL: generate_docs-2.6.1.tar.gz
  • Upload date:
  • Size: 20.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.9.6

File hashes

Hashes for generate_docs-2.6.1.tar.gz
Algorithm Hash digest
SHA256 7806c00b72b550c42cf0ed36aed6d629e29136d295ccc5f5cf25642005bb086f
MD5 80aac6e74d0ed7fe16a70f77e93d07b2
BLAKE2b-256 72222a455ebc07b40e8ea4122a73db29bac6db0836831080d50346e5294fb3a0

See more details on using hashes here.

File details

Details for the file generate_docs-2.6.1-py3-none-any.whl.

File metadata

  • Download URL: generate_docs-2.6.1-py3-none-any.whl
  • Upload date:
  • Size: 21.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.9.6

File hashes

Hashes for generate_docs-2.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3b56db162aba67352998b0cdb36a5610dfd3f135ba886818c38cc506e4ef5bb9
MD5 40bab62d4c6aa229a222090755857016
BLAKE2b-256 180bdc614253f1d5657ec1e2a0c61d99b0522cc555845d4cb52e0fed66a9c6d0

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page