Skip to main content

A simple README generator for Python projects.

Project description

readme-generator

Overview

This is a sample README generated by the script.

Folder Structure

┣━ 📁 .github
┃  ┗━ 📁 workflows
┃     ┗━ 📜 python-publish.yml
┣━ 📁 readme_generator
┃  ┣━ 🐍 __init__.py
┃  ┣━ 🐍 emoji_map.py
┃  ┣━ 🐍 generate_readme.py
┃  ┣━ 🐍 readme_builder.py
┃  ┗━ 🐍 repo_structure.py
┣━ 📁 tests
┃  ┗━ 🐍 test_readme_generator.py
┣━ 👻 .gitignore
┣━ 🐚 install_package.sh
┣━ ⚙️ pyproject.toml
┣━ 📖 README.md
┗━ 📃 requirements.txt

Files Description

  • 📁 .github: Contains configuration files for GitHub-specific workflows and actions.
    • 📁 workflows: Contains GitHub Actions workflows for automating tasks.
      • 📜 python-publish.yml: Contains GitHub Actions workflow configuration for automating Python package publishing.
  • 📁 readme_generator: Contains the main Python package for the project.
    • 🐍 __init__.py: Marks the folder as a Python package.
    • 🐍 emoji_map.py: Maps file types to corresponding emojis for visual representation.
    • 🐍 generate_readme.py: Main script for generating the README file.
    • 🐍 readme_builder.py: Handles the logic for constructing the README content.
  • 📁 tests: Contains test modules for the project.
    • 🐍 test_readme_generator.py: Unit tests for the README generator functionality.
  • 👻 .gitignore: Specifies files and directories to be ignored by Git.
  • 🐚 install_package.sh: A shell script to install the package.
  • ⚙️ pyproject.toml: Configuration file for Python project dependencies and build system.
  • 📖 README.md: The generated README file for the project.
  • 📃 requirements.txt: Lists the Python dependencies required for the project.

Installation

To install the package, run the following command:

pip install readme-generator

Usage

To generate a README file, run the following command:

python generate_readme.py --repo-path "/path/to/your/repository" \
    --overview "This is a sample README generated by the script." \
    --exclude-dirs ".git" \
	--exclude-dirs "__pycache__" \
	--exclude-dirs ".idea" \
	--exclude-dirs ".vscode" \
	--exclude-dirs ".ipynb_checkpoints" \
	--exclude-dirs ".egg-info" \
	--exclude-dirs "dist" \
	--exclude-dirs "_env" \
	--exclude-dirs ".pytest_cache" \
	--exclude-files ".pyc" \
	--exclude-files ".pyo" \
	--exclude-files ".pyd" \
	--exclude-files ".DS_Store"

Parameters

  • --repo_path: Specifies the path to the repository for which the README will be generated (defaults to the current working directory).

    • Example: "/path/to/your/repository"
  • --overview: Provides a brief description of the project to include in the README (defaults to an empty string).

    • Example: "This is a sample README generated by the script."
  • --exclude_dirs: Lists directories to exclude from the repository structure in the README file (defaults to .git, __pycache__, .idea, .vscode, .ipynb_checkpoints, .egg-info, dist, _env, and .pytest_cache).

    • Example: .git readme_generator .vscode .idea .ipynb_checkpoints .egg-info dist _env .pytest_cache
  • --exclude_files: Lists file extensions or specific files to exclude from the repository structure in the README file (defaults to .pyc, .pyo, .pyd, and .DS_Store).

    • Example: .pyc .pyo .pyd .DS_Store

Python Version

It can also be run using the following python code:

from pathlib import Path
from readme_generator.generate_readme import generate_readme

repo_path = Path(__file__).resolve().parent
generate_readme(
	repo_path,
	overview="This is a sample README generated by the script.",
	exclude_dirs={".git", "__pycache__", ".idea", ".vscode", ".ipynb_checkpoints", ".egg-info", "dist", "_env", ".pytest_cache",},
	exclude_files={".pyc", ".pyo", ".pyd", ".DS_Store"}
)

Last updated on 2025-06-07 20:36

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

tree_readme-2.1.4.tar.gz (7.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tree_readme-2.1.4-py3-none-any.whl (6.5 kB view details)

Uploaded Python 3

File details

Details for the file tree_readme-2.1.4.tar.gz.

File metadata

  • Download URL: tree_readme-2.1.4.tar.gz
  • Upload date:
  • Size: 7.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for tree_readme-2.1.4.tar.gz
Algorithm Hash digest
SHA256 aa990cc74be9c890010f52471f2240061f3f1397777da9732d83b76433d7fb15
MD5 f4d857c5ca034fcc3221f1bc0fa0262b
BLAKE2b-256 cfcbadea8622de4c7ce008e7f90f3ebae2637a9d089bd98e1f24e8ad57409e70

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_readme-2.1.4.tar.gz:

Publisher: python-publish.yml on kvbiii/tree-readme

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tree_readme-2.1.4-py3-none-any.whl.

File metadata

  • Download URL: tree_readme-2.1.4-py3-none-any.whl
  • Upload date:
  • Size: 6.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for tree_readme-2.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 5119ad39ffe6069a30a22caaa84b4cf307809c97a1687bf614c6c4d9d77add2d
MD5 8347bb4a26ad9a4c5c98474b01035576
BLAKE2b-256 f7e60bf36f2808a7f6b849c69f20329f3976b95ef75061916ba4e113723e3bce

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_readme-2.1.4-py3-none-any.whl:

Publisher: python-publish.yml on kvbiii/tree-readme

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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