https://github.com/romanfama592/folder_mapping_action
Incorporate or update the folder mapping information in the README.md file and using the ".gitignore" to ignore files. Everything automatically and little configuration.
https://github.com/romanfama592/folder_mapping_action
actions docs-generator folder-structure gitignore pipenv python workflows
Last synced: about 1 month ago
JSON representation
Incorporate or update the folder mapping information in the README.md file and using the ".gitignore" to ignore files. Everything automatically and little configuration.
- Host: GitHub
- URL: https://github.com/romanfama592/folder_mapping_action
- Owner: RomanFama592
- License: mit
- Created: 2023-11-05T07:45:43.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-11-14T05:21:42.000Z (over 2 years ago)
- Last Synced: 2025-02-10T06:42:09.038Z (over 1 year ago)
- Topics: actions, docs-generator, folder-structure, gitignore, pipenv, python, workflows
- Language: Python
- Homepage:
- Size: 27.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Folder Mapping


[](https://github.com/RomanFama592/folder_mapping_action/actions/workflows/pylint.yml)
[](https://github.com/RomanFama592/folder_mapping_action/actions/workflows/update_readme.yml)
This project is a **CLI tool** that maps the folder structure of a directory and generates an output file with a customizable name based on a template. The main purpose of this tool is to provide a clear and concise representation of the folder structure, taking into account exclusions defined in the `.gitignore` file to avoid displaying specific files. Skip the files until you find another `.gitignore` file. From that path onwards, exclude the files specified in this new file.
π Contents
## π Project Structure
Folder map and example of use:
```
/
βββ .devcontainer/
β βββ Dockerfile
β βββ devcontainer.json
βββ .github/
β βββ workflows/
β βββ pylint.yml
β βββ update_readme.yml
βββ src/
β βββ __init__.py
β βββ args.py
β βββ exceptions.py
β βββ map_folders.py
β βββ short_folders.py
βββ .dockerignore
βββ .gitignore
βββ Dockerfile
βββ LICENSE
βββ Pipfile
βββ Pipfile.lock
βββ README.md
βββ README.md.template
βββ action.yml
βββ index.py
βββ requirements.txt
```
## β¨ Usage
- **Example of using workflow in [README.md.template](https://github.com/RomanFama592/folder_mapping_action/blob/main/README.md.template)**
- **Example of using template in [update_readme.yml](https://github.com/RomanFama592/folder_mapping_action/blob/main/.github/workflows/update_readme.yml)**
```yaml
- uses: RomanFama592/folder_mapping_action@v1
with:
path-directory:
description: "Path to the directory for folder mapping."
default: "./"
template-output:
description: "Path to the template file for README.md generation."
default: "./README.md.template"
path-output:
description: "Path where the generated README.md file will be saved."
default: "./README.md"
search-word:
description: "Keyword or search term in the template file for folder mapping."
default: "map_folder"
```
_In your template put `%{{` + your **search word** + `}}%` to find where you want to put the map folder._
## π Contributions
Contributions are what make the Open Source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**.
If you have a suggestion that would make this better, please fork the repo and create a Pull Request. You can also simply [open an issue](https://github.com/RomanFama592/folder_mapping_action/issues)
Don't forget to **give the project a star β!** Thanks again!
1. Fork the project
2. Clone your fork
```bash
git clone https://github.com/@your_username/folder_mapping_action
```
3. Install `pipenv`
```bash
pip install pipenv
```
4. Install dependencies
```bash
pipenv install --dev
```
5. Open enviroment of Python
```bash
pipenv shell
```
6. Create your Feature Branch
```bash
git checkout -b feature/AmazingFeature
```
7. Push to the Branch
```bash
git push origin feature/AmazingFeature
```
8. Open a Pull Request
**Important**: Use "conventional commits" and ensure that the code passes the linter test, pull requests are not accepted without this last point.
## π¨ββοΈ License
Distributed under the MIT License. See `LICENSE` for more information.
## π¬ Contact me
**FamΓ‘ RomΓ‘n**
- famaroman@gmail.com
- [Linkedin](https://www.linkedin.com/in/romanfama)