Name | richpyls JSON |
Version |
0.1.3
JSON |
| download |
home_page | None |
Summary | A modern, type-annotated Python implementation of the Unix ls command with beautiful Rich formatting and color-coded file types |
upload_time | 2025-07-12 09:55:32 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.13 |
license | None |
keywords |
cli
command-line
directory
file-listing
ls
tree
tree-view
unix
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# `richpyls` - A Python Implementation of the Unix `ls` Command
[](https://github.com/lpozo/richpyls/actions)
[](https://python.org)
[](https://opensource.org/licenses/MIT)
[](https://github.com/astral-sh/ruff)
[](https://mypy.readthedocs.io/)
[](https://github.com/PyCQA/bandit)
[](https://github.com/pre-commit/pre-commit)
<!-- Commented out until package is published to PyPI
[](https://codecov.io/gh/lpozo/richpyls)
[](https://pypi.org/project/richpyls/)
[](https://pypi.org/project/richpyls/)
-->
A modern, type-annotated Python implementation of the Unix `ls` command with beautiful Rich formatting,
color-coded file types, and support for long format listings and hidden files.
## Quality Metrics



| Metric | Status |
|--------|--------|
| Test Coverage |  |
| Type Coverage | [](https://mypy.readthedocs.io/) |
| Code Quality | [](https://github.com/astral-sh/ruff) |
| Security Scan | [](https://github.com/PyCQA/bandit) |
| Documentation | [](README.md) |
## Features
- 🎨 **Rich Visual Output**: Beautiful color-coded file types with emoji icons
- 📁 **Directory Listing**: List files and directories in the current or specified path
- 📄 **Long Format**: Display detailed file information in a professional table format
- 🌳 **Tree View**: Display directories in a tree-like hierarchical format with the `-t` option
- 🔍 **Hidden Files**: Show hidden files (starting with `.`) with the `-a` option using 🫣 emoji
- 📊 **Size Sorting**: Show top N largest files/directories sorted by size with the `-s` option
- 🏃 **Fast Performance**: Built with modern Python using pathlib for efficient path operations
- 🎯 **Type Safety**: Fully type-annotated codebase with mypy validation
- ✅ **Well Tested**: Comprehensive test suite with excellent coverage
- 🐍 **Modern Python**: Uses Python 3.13+ features and best practices
## File Type Icons
The Rich output includes beautiful emoji icons for different file types:
- 🐍 Python files (`.py`, `.pyx`, `.pyi`)
- ⚙️ Configuration files (`.toml`, `.json`, `.yaml`, `.yml`, `.ini`, `.cfg`, `.conf`)
- 📄 Documentation files (`.md`, `.rst`, `.txt`, `.doc`, `.docx`, `.pdf`)
- 📦 Archive files (`.zip`, `.tar`, `.gz`, `.bz2`, `.xz`, `.7z`, `.rar`)
- 🖼️ Image files (`.png`, `.jpg`, `.jpeg`, `.gif`, `.bmp`, `.svg`, `.ico`)
- 📁 Directories
- ⚡ Executable files
- 🔗 Symbolic links
- 🫣 Hidden files (starting with `.`)
## Installation
### From PyPI (Recommended)
```sh
pip install richpyls
```
Once installed, you can use the `richpyls` command anywhere in your terminal.
### From Source
#### Using `uv` (recommended)
```sh
# Clone the repository
git clone https://github.com/lpozo/richpyls.git
cd richpyls
# Install with uv
uv sync
# Run the application
uv run richpyls
```
#### Using `pip`
```sh
# Clone the repository
git clone https://github.com/lpozo/richpyls.git
cd richpyls
# Create and activate a virtual environment
python -m venv .venv
source .venv/bin/activate # On macOS/Linux
# or
.venv\Scripts\activate # On Windows
# Install in editable mode
pip install -e .
# Run the application
richpyls
```
## Usage
```sh
# List files in current directory
richpyls
# List files in specific directory
richpyls /path/to/directory
# List multiple files/directories
richpyls file1.txt directory1 file2.txt
```
### Command Options
| Option | Description |
|--------|-------------|
| `-l` | Use long listing format (shows permissions, ownership, size, date in Rich table) |
| `-a` | Show all files, including hidden files (starting with `.`) with 🫣 emoji |
| `-t` | Display directories in a tree-like format with Rich styling |
| `-s N` | Show top N files/directories sorted by size (descending) in a Rich table |
| `-la` | Combine long format with showing hidden files |
| `-tl` | Combine tree format with long listing |
| `-ta` | Combine tree format with showing hidden files |
| `-sa` | Combine size sorting with showing hidden files |
### Examples
```sh
# Basic listing with Rich icons and colors
richpyls
📄 README.md
⚙️ pyproject.toml
📁 src
📁 tests
📄 uv.lock
# Show hidden files with special emoji
richpyls -a
🫣 .git
🫣 .gitignore
🫣 .python-version
📁 .venv
📄 README.md
⚙️ pyproject.toml
📁 src
📁 tests
📄 uv.lock
# Tree format (shows directory structure with Rich styling)
richpyls -t
├── 📄 README.md
├── ⚙️ pyproject.toml
├── 📁 src
│ └── 📁 richpyls
│ ├── 🐍 __init__.py
│ └── 🐍 __main__.py
├── 📁 tests
│ ├── 🐍 __init__.py
│ └── 🐍 test_richpyls.py
└── 📄 uv.lock
# Tree format with long listing and Rich table
richpyls -tl src
└── drwxr-xr-x 5 user staff 160B Jul 11 18:34 📁 richpyls
├── drwxr-xr-x 4 user staff 128B Jul 11 18:34 📁 __pycache__
│ ├── -rw-r--r-- 1 user staff 622B Jul 11 18:34 📄 __init__.cpython-313.pyc
│ └── -rw-r--r-- 1 user staff 14.8KB Jul 11 18:34 📄 __main__.cpython-313.pyc
├── -rw-r--r-- 1 user staff 452B Jul 11 18:34 🐍 __init__.py
└── -rw-r--r-- 1 user staff 12.1KB Jul 11 18:34 🐍 __main__.py
```
## Technologies
### Dependencies
- **[Python 3.13+](https://python.org)**: Modern Python with type hints and advanced features
- **[click](https://click.palletsprojects.com/)**: Command-line interface creation toolkit
- **[rich](https://rich.readthedocs.io/)**: Rich text and beautiful formatting for the terminal
### Development Dependencies
- **[pytest](https://pytest.org/)**: Testing framework for comprehensive test coverage
- **[mypy](https://mypy.readthedocs.io/)**: Static type checker for Python
- **[ruff](https://github.com/astral-sh/ruff)**: Fast Python linter and formatter
- **[bandit](https://github.com/PyCQA/bandit)**: Security vulnerability scanner
- **[pre-commit](https://pre-commit.com/)**: Git hooks for automated quality checks
- **[uv](https://docs.astral.sh/uv/)**: Fast Python package manager and resolver
### Build & Deployment


<!-- Commented out until package is published to PyPI


-->
## Development & Contributing
Contributions are welcome! Here's how you can set up the development environment and contribute:
### Setup
1. Fork the repository or clone directly:
```sh
git clone https://github.com/lpozo/richpyls.git
cd richpyls
```
2. Reproduce the development environment:
```sh
uv sync --dev
```
3. Set up pre-commit hooks for code quality:
```sh
uv run pre-commit install
```
### Running Tests
```sh
# Run all tests
uv run python -m pytest
# Run tests with verbose output
uv run python -m pytest -v
# Run tests with coverage
uv run python -m pytest --cov=richpyls
```
### Type Checking
```sh
# Check types with mypy
uv run mypy src/richpyls/
# Check all Python files
uv run mypy .
```
### Code Quality and Formatting
The project uses automated code quality tools:
```sh
# Format code with ruff
uv run ruff format .
# Lint code with ruff
uv run ruff check . --fix
# Security scan with bandit
uv run bandit -r src/
```
**Pre-commit hooks** automatically run quality checks on every commit.
### Contributing Workflow
1. **Create a feature branch**: `git checkout -b feature/amazing-feature`
2. **Make your changes**: Implement your feature or bug fix
3. **Add tests**: Ensure your changes are well-tested
4. **Run quality checks**:
```sh
uv run python -m pytest # Run tests
uv run mypy src/richpyls/ # Type check
uv run ruff format . # Format code
uv run ruff check . # Lint code
```
5. **Commit your changes**: `git commit -m 'Add amazing feature'`
6. **Push to the branch**: `git push origin feature/amazing-feature`
7. **Open a Pull Request**
### Development Guidelines
- Follow PEP 8 style guidelines
- Add type hints to all new code
- Write tests for new functionality
- Update documentation as needed
- Ensure all tests pass before submitting
### Project Standards
The project maintains high code quality through:
- **Type annotations**: All functions and variables are type-annotated
- **Comprehensive tests**: Excellent test coverage with edge cases
- **Clean architecture**: Well-organized code with clear separation of concerns
- **Modern Python**: Uses latest Python features and best practices
- **Rich UI**: Beautiful terminal output with colors, icons, and professional formatting
### Build & Publishing
For information about building and publishing the package, see [BUILD_PUBLISHING.md](BUILD_PUBLISHING.md).
## License
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.
## Author
### Leodanis Pozo Ramos
- GitHub: [@lpozo](https://github.com/lpozo)
---
⭐ If you found this project helpful, please give it a star!
## Acknowledgments
- Inspired by the Unix `ls` command
- Built with modern Python best practices
- Thanks to the Python community for excellent tools and libraries
- Special thanks to the [Rich](https://rich.readthedocs.io/) library for beautiful terminal output
- Development assisted by [GitHub Copilot Chat](https://github.com/features/copilot) for enhanced productivity
Raw data
{
"_id": null,
"home_page": null,
"name": "richpyls",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.13",
"maintainer_email": "Leodanis Pozo Ramos <lpozor78@gmail.com>",
"keywords": "cli, command-line, directory, file-listing, ls, tree, tree-view, unix",
"author": null,
"author_email": "Leodanis Pozo Ramos <lpozor78@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/3f/d3/bda5832a54dd2ae4b10665d7e3459c1d73da6c2a10e3b12fe7c64d271332/richpyls-0.1.3.tar.gz",
"platform": null,
"description": "# `richpyls` - A Python Implementation of the Unix `ls` Command\n\n[](https://github.com/lpozo/richpyls/actions)\n[](https://python.org)\n[](https://opensource.org/licenses/MIT)\n\n[](https://github.com/astral-sh/ruff)\n[](https://mypy.readthedocs.io/)\n[](https://github.com/PyCQA/bandit)\n[](https://github.com/pre-commit/pre-commit)\n\n<!-- Commented out until package is published to PyPI\n[](https://codecov.io/gh/lpozo/richpyls)\n[](https://pypi.org/project/richpyls/)\n[](https://pypi.org/project/richpyls/)\n-->\n\nA modern, type-annotated Python implementation of the Unix `ls` command with beautiful Rich formatting,\ncolor-coded file types, and support for long format listings and hidden files.\n\n## Quality Metrics\n\n\n\n\n\n| Metric | Status |\n|--------|--------|\n| Test Coverage |  |\n| Type Coverage | [](https://mypy.readthedocs.io/) |\n| Code Quality | [](https://github.com/astral-sh/ruff) |\n| Security Scan | [](https://github.com/PyCQA/bandit) |\n| Documentation | [](README.md) |\n\n## Features\n\n- \ud83c\udfa8 **Rich Visual Output**: Beautiful color-coded file types with emoji icons\n- \ud83d\udcc1 **Directory Listing**: List files and directories in the current or specified path\n- \ud83d\udcc4 **Long Format**: Display detailed file information in a professional table format\n- \ud83c\udf33 **Tree View**: Display directories in a tree-like hierarchical format with the `-t` option\n- \ud83d\udd0d **Hidden Files**: Show hidden files (starting with `.`) with the `-a` option using \ud83e\udee3 emoji\n- \ud83d\udcca **Size Sorting**: Show top N largest files/directories sorted by size with the `-s` option\n- \ud83c\udfc3 **Fast Performance**: Built with modern Python using pathlib for efficient path operations\n- \ud83c\udfaf **Type Safety**: Fully type-annotated codebase with mypy validation\n- \u2705 **Well Tested**: Comprehensive test suite with excellent coverage\n- \ud83d\udc0d **Modern Python**: Uses Python 3.13+ features and best practices\n\n## File Type Icons\n\nThe Rich output includes beautiful emoji icons for different file types:\n\n- \ud83d\udc0d Python files (`.py`, `.pyx`, `.pyi`)\n- \u2699\ufe0f Configuration files (`.toml`, `.json`, `.yaml`, `.yml`, `.ini`, `.cfg`, `.conf`)\n- \ud83d\udcc4 Documentation files (`.md`, `.rst`, `.txt`, `.doc`, `.docx`, `.pdf`)\n- \ud83d\udce6 Archive files (`.zip`, `.tar`, `.gz`, `.bz2`, `.xz`, `.7z`, `.rar`)\n- \ud83d\uddbc\ufe0f Image files (`.png`, `.jpg`, `.jpeg`, `.gif`, `.bmp`, `.svg`, `.ico`)\n- \ud83d\udcc1 Directories\n- \u26a1 Executable files\n- \ud83d\udd17 Symbolic links\n- \ud83e\udee3 Hidden files (starting with `.`)\n\n## Installation\n\n### From PyPI (Recommended)\n\n```sh\npip install richpyls\n```\n\nOnce installed, you can use the `richpyls` command anywhere in your terminal.\n\n### From Source\n\n#### Using `uv` (recommended)\n\n```sh\n# Clone the repository\ngit clone https://github.com/lpozo/richpyls.git\ncd richpyls\n\n# Install with uv\nuv sync\n\n# Run the application\nuv run richpyls\n```\n\n#### Using `pip`\n\n```sh\n# Clone the repository\ngit clone https://github.com/lpozo/richpyls.git\ncd richpyls\n\n# Create and activate a virtual environment\npython -m venv .venv\nsource .venv/bin/activate # On macOS/Linux\n# or\n.venv\\Scripts\\activate # On Windows\n\n# Install in editable mode\npip install -e .\n\n# Run the application\nrichpyls\n```\n\n## Usage\n\n```sh\n# List files in current directory\nrichpyls\n\n# List files in specific directory\nrichpyls /path/to/directory\n\n# List multiple files/directories\nrichpyls file1.txt directory1 file2.txt\n```\n\n### Command Options\n\n| Option | Description |\n|--------|-------------|\n| `-l` | Use long listing format (shows permissions, ownership, size, date in Rich table) |\n| `-a` | Show all files, including hidden files (starting with `.`) with \ud83e\udee3 emoji |\n| `-t` | Display directories in a tree-like format with Rich styling |\n| `-s N` | Show top N files/directories sorted by size (descending) in a Rich table |\n| `-la` | Combine long format with showing hidden files |\n| `-tl` | Combine tree format with long listing |\n| `-ta` | Combine tree format with showing hidden files |\n| `-sa` | Combine size sorting with showing hidden files |\n\n### Examples\n\n```sh\n# Basic listing with Rich icons and colors\nrichpyls\n\ud83d\udcc4 README.md\n\u2699\ufe0f pyproject.toml\n\ud83d\udcc1 src\n\ud83d\udcc1 tests\n\ud83d\udcc4 uv.lock\n\n# Show hidden files with special emoji\nrichpyls -a\n\ud83e\udee3 .git\n\ud83e\udee3 .gitignore\n\ud83e\udee3 .python-version\n\ud83d\udcc1 .venv\n\ud83d\udcc4 README.md\n\u2699\ufe0f pyproject.toml\n\ud83d\udcc1 src\n\ud83d\udcc1 tests\n\ud83d\udcc4 uv.lock\n\n# Tree format (shows directory structure with Rich styling)\nrichpyls -t\n\u251c\u2500\u2500 \ud83d\udcc4 README.md\n\u251c\u2500\u2500 \u2699\ufe0f pyproject.toml\n\u251c\u2500\u2500 \ud83d\udcc1 src\n\u2502 \u2514\u2500\u2500 \ud83d\udcc1 richpyls\n\u2502 \u251c\u2500\u2500 \ud83d\udc0d __init__.py\n\u2502 \u2514\u2500\u2500 \ud83d\udc0d __main__.py\n\u251c\u2500\u2500 \ud83d\udcc1 tests\n\u2502 \u251c\u2500\u2500 \ud83d\udc0d __init__.py\n\u2502 \u2514\u2500\u2500 \ud83d\udc0d test_richpyls.py\n\u2514\u2500\u2500 \ud83d\udcc4 uv.lock\n\n# Tree format with long listing and Rich table\nrichpyls -tl src\n\u2514\u2500\u2500 drwxr-xr-x 5 user staff 160B Jul 11 18:34 \ud83d\udcc1 richpyls\n \u251c\u2500\u2500 drwxr-xr-x 4 user staff 128B Jul 11 18:34 \ud83d\udcc1 __pycache__\n \u2502 \u251c\u2500\u2500 -rw-r--r-- 1 user staff 622B Jul 11 18:34 \ud83d\udcc4 __init__.cpython-313.pyc\n \u2502 \u2514\u2500\u2500 -rw-r--r-- 1 user staff 14.8KB Jul 11 18:34 \ud83d\udcc4 __main__.cpython-313.pyc\n \u251c\u2500\u2500 -rw-r--r-- 1 user staff 452B Jul 11 18:34 \ud83d\udc0d __init__.py\n \u2514\u2500\u2500 -rw-r--r-- 1 user staff 12.1KB Jul 11 18:34 \ud83d\udc0d __main__.py\n```\n\n## Technologies\n\n### Dependencies\n\n- **[Python 3.13+](https://python.org)**: Modern Python with type hints and advanced features\n- **[click](https://click.palletsprojects.com/)**: Command-line interface creation toolkit\n- **[rich](https://rich.readthedocs.io/)**: Rich text and beautiful formatting for the terminal\n\n### Development Dependencies\n\n- **[pytest](https://pytest.org/)**: Testing framework for comprehensive test coverage\n- **[mypy](https://mypy.readthedocs.io/)**: Static type checker for Python\n- **[ruff](https://github.com/astral-sh/ruff)**: Fast Python linter and formatter\n- **[bandit](https://github.com/PyCQA/bandit)**: Security vulnerability scanner\n- **[pre-commit](https://pre-commit.com/)**: Git hooks for automated quality checks\n- **[uv](https://docs.astral.sh/uv/)**: Fast Python package manager and resolver\n\n### Build & Deployment\n\n\n\n\n<!-- Commented out until package is published to PyPI\n\n\n-->\n\n## Development & Contributing\n\nContributions are welcome! Here's how you can set up the development environment and contribute:\n\n### Setup\n\n1. Fork the repository or clone directly:\n\n ```sh\n git clone https://github.com/lpozo/richpyls.git\n cd richpyls\n ```\n\n2. Reproduce the development environment:\n\n ```sh\n uv sync --dev\n ```\n\n3. Set up pre-commit hooks for code quality:\n\n ```sh\n uv run pre-commit install\n ```\n\n### Running Tests\n\n```sh\n# Run all tests\nuv run python -m pytest\n\n# Run tests with verbose output\nuv run python -m pytest -v\n\n# Run tests with coverage\nuv run python -m pytest --cov=richpyls\n```\n\n### Type Checking\n\n```sh\n# Check types with mypy\nuv run mypy src/richpyls/\n\n# Check all Python files\nuv run mypy .\n```\n\n### Code Quality and Formatting\n\nThe project uses automated code quality tools:\n\n```sh\n# Format code with ruff\nuv run ruff format .\n\n# Lint code with ruff\nuv run ruff check . --fix\n\n# Security scan with bandit\nuv run bandit -r src/\n```\n\n**Pre-commit hooks** automatically run quality checks on every commit.\n\n### Contributing Workflow\n\n1. **Create a feature branch**: `git checkout -b feature/amazing-feature`\n2. **Make your changes**: Implement your feature or bug fix\n3. **Add tests**: Ensure your changes are well-tested\n4. **Run quality checks**:\n\n ```sh\n uv run python -m pytest # Run tests\n uv run mypy src/richpyls/ # Type check\n uv run ruff format . # Format code\n uv run ruff check . # Lint code\n ```\n\n5. **Commit your changes**: `git commit -m 'Add amazing feature'`\n6. **Push to the branch**: `git push origin feature/amazing-feature`\n7. **Open a Pull Request**\n\n### Development Guidelines\n\n- Follow PEP 8 style guidelines\n- Add type hints to all new code\n- Write tests for new functionality\n- Update documentation as needed\n- Ensure all tests pass before submitting\n\n### Project Standards\n\nThe project maintains high code quality through:\n\n- **Type annotations**: All functions and variables are type-annotated\n- **Comprehensive tests**: Excellent test coverage with edge cases\n- **Clean architecture**: Well-organized code with clear separation of concerns\n- **Modern Python**: Uses latest Python features and best practices\n- **Rich UI**: Beautiful terminal output with colors, icons, and professional formatting\n\n### Build & Publishing\n\nFor information about building and publishing the package, see [BUILD_PUBLISHING.md](BUILD_PUBLISHING.md).\n\n## License\n\nThis project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.\n\n## Author\n\n### Leodanis Pozo Ramos\n\n- GitHub: [@lpozo](https://github.com/lpozo)\n\n---\n\n\u2b50 If you found this project helpful, please give it a star!\n\n## Acknowledgments\n\n- Inspired by the Unix `ls` command\n- Built with modern Python best practices\n- Thanks to the Python community for excellent tools and libraries\n- Special thanks to the [Rich](https://rich.readthedocs.io/) library for beautiful terminal output\n- Development assisted by [GitHub Copilot Chat](https://github.com/features/copilot) for enhanced productivity\n",
"bugtrack_url": null,
"license": null,
"summary": "A modern, type-annotated Python implementation of the Unix ls command with beautiful Rich formatting and color-coded file types",
"version": "0.1.3",
"project_urls": {
"Bug Reports": "https://github.com/lpozo/richpyls/issues",
"Documentation": "https://github.com/lpozo/richpyls#readme",
"Homepage": "https://github.com/lpozo/richpyls",
"Source": "https://github.com/lpozo/richpyls"
},
"split_keywords": [
"cli",
" command-line",
" directory",
" file-listing",
" ls",
" tree",
" tree-view",
" unix"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "4a009192be6248bb27d29212f6447b504587b2b6a8fe632a8e450eb598e21127",
"md5": "e013d6ee8b66b97f597f5abf65982ed1",
"sha256": "84fdef27bd27c1ba0875037698f3ba230cdc74c7481927ca52bd7d8268c4a23e"
},
"downloads": -1,
"filename": "richpyls-0.1.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "e013d6ee8b66b97f597f5abf65982ed1",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.13",
"size": 10594,
"upload_time": "2025-07-12T09:55:30",
"upload_time_iso_8601": "2025-07-12T09:55:30.755814Z",
"url": "https://files.pythonhosted.org/packages/4a/00/9192be6248bb27d29212f6447b504587b2b6a8fe632a8e450eb598e21127/richpyls-0.1.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "3fd3bda5832a54dd2ae4b10665d7e3459c1d73da6c2a10e3b12fe7c64d271332",
"md5": "e5d67a3a6df21a1880dfddb6690d0c08",
"sha256": "27a68b126ae4007cb757d43b4573331c566a3a073bcf40302428f3ba5475cc13"
},
"downloads": -1,
"filename": "richpyls-0.1.3.tar.gz",
"has_sig": false,
"md5_digest": "e5d67a3a6df21a1880dfddb6690d0c08",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.13",
"size": 17772,
"upload_time": "2025-07-12T09:55:32",
"upload_time_iso_8601": "2025-07-12T09:55:32.112088Z",
"url": "https://files.pythonhosted.org/packages/3f/d3/bda5832a54dd2ae4b10665d7e3459c1d73da6c2a10e3b12fe7c64d271332/richpyls-0.1.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-12 09:55:32",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "lpozo",
"github_project": "richpyls",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "richpyls"
}