Metadata-Version: 2.4
Name: py_simple_wrap
Version: 0.6.0
Summary: A package to make complex python functionality simple
Author-email: Sara Czasak <sara.p.czasak.m@gmail.com>
Maintainer: jagjitkaur0000, atiqur-rahman-pro, Gaohar Imran, Yassin Azzouzi
Maintainer-email: Sara Czasak <sara.p.czasak.m@gmail.com>
License: <div align="center">
        
        🏠[README](README.md) · ⚡[Quickstart](QUICKSTART.md) · 📦[Modules](MODULES.md) · 🆘[Support](SUPPORT.md) · 🚀[Contributing](CONTRIBUTING.md) · 🌟[Contributors](CONTRIBUTORS.md) · 📜[Changelog](CHANGELOG.md) · 🔒[Security](SECURITY.md) · 🌱[Code of Conduct](CODE_OF_CONDUCT.md)
        
        </div>
        
        
        MIT License
        
        Copyright (c) 2026 Sara Czasak
        
        Permission is hereby granted, free of charge, to any person obtaining a copy
        of this software and associated documentation files (the "Software"), to deal
        in the Software without restriction, including without limitation the rights
        to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
        copies of the Software, and to permit persons to whom the Software is
        furnished to do so, subject to the following conditions:
        
        The above copyright notice and this permission notice shall be included in all
        copies or substantial portions of the Software.
        
        THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
        IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
        FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
        AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
        LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
        OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
        SOFTWARE.
        
Project-URL: Homepage, https://github.com/sara-czasak/py-simple-wrap
Project-URL: Repository, https://github.com/sara-czasak/py-simple-wrap
Project-URL: Bug Tracker, https://github.com/sara-czasak/py-simple-wrap/issues
Project-URL: Documentation, https://sara-czasak.github.io/py-simple-wrap/docs/
Project-URL: Quickstart, https://github.com/sara-czasak/py-simple-wrap/blob/main/QUICKSTART.md
Keywords: python,beginner-friendly,wrapper,education,utilities,helper-functions,simple-api,easy-to-use,automation,beginner,learning,students
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Education
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Education
Classifier: Topic :: Utilities
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE.md
Requires-Dist: requests>=2.25.0
Requires-Dist: beautifulsoup4>=4.9.0
Requires-Dist: python-benedict>=0.38.0
Requires-Dist: Pillow>=10.0.0
Requires-Dist: qrcode>=7.4.0
Requires-Dist: pygame-ce>=2.5.0
Requires-Dist: matplotlib>=3.0.0
Requires-Dist: GitPython>=3.1.0
Requires-Dist: langchain>=0.2.0
Requires-Dist: langchain-openai>=0.1.0
Requires-Dist: langchain-ollama>=0.1.0
Requires-Dist: langchain-anthropic>=0.1.0
Requires-Dist: langchain-google-genai>=1.0.0
Requires-Dist: langchain-mistralai>=0.1.0
Requires-Dist: pydantic>=2.0.0
Provides-Extra: test
Requires-Dist: pytest>=7.0; extra == "test"
Provides-Extra: docs
Requires-Dist: mkdocs; extra == "docs"
Requires-Dist: mkdocs-material; extra == "docs"
Requires-Dist: mkdocs-include-markdown-plugin; extra == "docs"
Requires-Dist: mkdocstrings; extra == "docs"
Requires-Dist: mkdocstrings-python; extra == "docs"
Dynamic: license-file

<div align="center">

⚡[Quickstart](QUICKSTART.md) · 📦[Modules](MODULES.md) · 🆘[Support](SUPPORT.md) · 🚀[Contributing](CONTRIBUTING.md) · 🌟[Contributors](CONTRIBUTORS.md) · 📜[Changelog](CHANGELOG.md) · 🔒[Security](SECURITY.md) · 🌱[Code of Conduct](CODE_OF_CONDUCT.md) · ⚖️[License](LICENSE.md)

</div>

<div align="center">
<!-- Once you have a logo/wordmark image, this pair auto-swaps by GitHub theme:
![py-simple-wrap](docs/assets/logo-dark.png#gh-dark-mode-only)
![py-simple-wrap](docs/assets/logo-light.png#gh-light-mode-only)
-->
 
# py-simple-wrap
 
**Making Python feel like plain English.**
 
[![PyPI](https://img.shields.io/pypi/v/py-simple-wrap?style=flat-square&logo=pypi&logoColor=white&color=3775A9)](https://pypi.org/project/py-simple-wrap/)
[![Tests](https://img.shields.io/github/actions/workflow/status/sara-czasak/py-simple-wrap/tests.yml?style=flat-square&logo=github&label=tests)](https://github.com/sara-czasak/py-simple-wrap/actions/workflows/tests.yml)
[![Contributors](https://img.shields.io/badge/contributors-56-orange?style=flat-square)](CONTRIBUTORS.md)
[![PyPI Downloads](https://static.pepy.tech/personalized-badge/py-simple-wrap?period=total&units=NONE&left_color=BLACK&right_color=GREEN&left_text=downloads)](https://pepy.tech/projects/py-simple-wrap)
[![License](https://img.shields.io/badge/license-MIT-yellow?style=flat-square)](LICENSE.md)
[![Discord](https://img.shields.io/discord/1533803449895092245?style=flat-square&logo=discord&logoColor=white&label=discord&color=5865F2)](https://discord.gg/Ge5HnVw2p)
 
</div>
<br>
py-simple-wrap is a beginner-friendly Python toolbox — simple, intuitive functions for common tasks, so you can build something fun before the syntax gets in the way.
 
<div align="center">
<br>

## Modules at a glance

|                                                                                                                                                            |                                                                                                                                                                 |                                                                                                                                                            |                                                                                                                                                     |                                                                                                                                                           |                                                                                                                                                         |                                                                                                                                                                 |                                                                                                                                                                |                                                                                                                                               |                                                                                                                                                                          |
|:-----------------------------------------------------------------------------------------------------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------|:--------------------------------------------------------------------------------------------------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [📂 ![Files](https://img.shields.io/badge/Files-4C8BF5?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_file_manager/) | [🕰️ ![Dates](https://img.shields.io/badge/Dates-E0692A?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_date_formatter/)   | [🔢 ![Numbers](https://img.shields.io/badge/Numbers-C98C1B?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_numbers/)  | [📋 ![Lists](https://img.shields.io/badge/Lists-2FA84F?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_lists/) | [🔤 ![Strings](https://img.shields.io/badge/Strings-2FA84F?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_strings/) | [✂️ ![Text](https://img.shields.io/badge/Text-2FA84F?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_text/)        | [🔄 ![Converter](https://img.shields.io/badge/Converter-C98C1B?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_converter/) | [✅ ![Validator](https://img.shields.io/badge/Validator-2FA84F?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_validator/) | [🌐 ![Web](https://img.shields.io/badge/Web-9B59D0?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_web/) | [🎨 ![Colors](https://img.shields.io/badge/Colors-9B59D0?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_colors/)                   |
| [🔄 ![Flow](https://img.shields.io/badge/Flow-E0692A?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_flow/)           | [📄 ![JSON](https://img.shields.io/badge/JSON-4C8BF5?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_json/)                | [🔍 ![Regex](https://img.shields.io/badge/Regex-2FA84F?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_regex/)        | [⚡ ![Async](https://img.shields.io/badge/Async-E0692A?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_async/)  | [🔑 ![Dict](https://img.shields.io/badge/Dict-4C8BF5?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_dict/)          | [🖼️ ![Images](https://img.shields.io/badge/Images-9B59D0?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_images/) | [🧮 ![Math](https://img.shields.io/badge/Math-C98C1B?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_math/)                | [📊 ![Stats](https://img.shields.io/badge/Stats-C98C1B?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_stats/)            | [📑 ![CSV](https://img.shields.io/badge/CSV-4C8BF5?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_csv/) | [📈 ![Data viz](https://img.shields.io/badge/Data%20viz-9B59D0?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_data_visualization/) |
| [🎮 ![Game](https://img.shields.io/badge/Game-E0507A?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_game/)           | [🎲 ![Generator](https://img.shields.io/badge/Generator-E0507A?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_generator/) | [🗜️ ![Archive](https://img.shields.io/badge/Archive-4C8BF5?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_archive/) | [❔ ![SQL](https://img.shields.io/badge/SQL-4C8BF5?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_sql/)        | [🔀 ![Random](https://img.shields.io/badge/Random-E0507A?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_random/)    | [⚙️ ![Config](https://img.shields.io/badge/Config-4C8BF5?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_config/)  | [🤖 ![AI](https://img.shields.io/badge/AI-A0522D?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_ai/)                      | [🪵 ![Logging](https://img.shields.io/badge/Logging-E0692A?style=flat-square)](https://sara-czasak.github.io/py-simple-wrap/docs/reference/easy_logging/)      |                                                                                                                                               |                                                                                                                                                                          |

|                                                                                                                                                            |                                                                                                                                                                 |                                                                                                                                                            |

### Legend:

|                  |                      |                   |                        |                  |                     |       |
|------------------|----------------------|-------------------|------------------------|------------------|---------------------|-------|
| 🟦 Files & data | 🟩 Text & validation | 🟨 Numbers & math | 🟧 Time & control flow | 🟪 Web & visuals | 🟥 Fun & generators | 🟫 AI |

## Documentation

### [**HOME PAGE**](https://sara-czasak.github.io/py-simple-wrap/index)

| <div style="width:200px">📦 **[Module reference](https://sara-czasak.github.io/py-simple-wrap/modules/)**</div>                | <div style="width:200px">📃 **[Docs](https://sara-czasak.github.io/py-simple-wrap/docs/)**</div>                       | <div style="width:200px">🤝 **[Contributor hub](https://sara-czasak.github.io/py-simple-wrap/docs/contributor-hub/)**</div>                                                                                                 | <div style="width:200px">🗺️ **[Contributors quest](https://sara-czasak.github.io/py-simple-wrap/quest/)**</div>                                                                                                                                 |
|:-------------------------------------------------------------------------------------------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| More detailed overview of all modules, links to documentation and tutorials, in other words everything you need to get started | Here you will find everything you need! From references through module tutorials all the way to contributor tutorials! | templates for contributors. This project is meant to help everyone learn and grow, including beginner contributors. The goal is to try to help everyone succeed on there journey with py-simple-wrap and python as a whole. | This is a gamified hub for contributors. You can participate in challenges, earn achievements, join a guild (or two). Search through open issues faster and check your progress in the leaderboard. This is meant to make contributing more fun! |
 

</div>

---
<div align="center">

## py-simple-wrap *collaborators*

<table>
  <tr>
    <td align="center" valign="top" width="14.28%">
      <a href="https://github.com/atiqur-rahman-pro">
        <img src="https://github.com/atiqur-rahman-pro.png" width="100px;" alt="atiqur rahman"/><br />
        <sub><b>atiqur rahman</b></sub>
      </a>
    </td>
    <td align="center" valign="top" width="14.28%">
      <a href="https://github.com/SemTiOne">
        <img src="https://github.com/SemTiOne.png" width="100px;" alt="Dane Parin"/><br />
        <sub><b>Dane Parin</b></sub>
      </a>
    </td>
    <td align="center" valign="top" width="14.28%">
      <a href="https://github.com/gaoharimran29-glitch">
        <img src="https://github.com/gaoharimran29-glitch.png" width="100px;" alt="Gaohar Imran"/><br />
        <sub><b>Gaohar Imran</b></sub>
      </a>
    </td>
    <td align="center" valign="top" width="14.28%">
      <a href="https://github.com/ghostfix-pm">
        <img src="https://github.com/ghostfix-pm.png" width="100px;" alt="ghostfix-pm"/><br />
        <sub><b>ghostfix-pm</b></sub>
      </a>
    </td>
    <td align="center" valign="top" width="14.28%">
      <a href="https://github.com/jagjitkaur0000">
        <img src="https://github.com/jagjitkaur0000.png" width="100px;" alt="jagjitkaur0000"/><br />
        <sub><b>jagjitkaur0000</b></sub>
      </a>
    </td>
    <td align="center" valign="top" width="14.28%">
      <a href="https://github.com/sara-czasak">
        <img src="https://github.com/sara-czasak.png" width="100px;" alt="Sara Czasak"/><br />
        <sub><b>Sara Czasak</b></sub>
      </a>
    </td>
    <td align="center" valign="top" width="14.28%">
      <a href="https://github.com/VidyavathiGK">
        <img src="https://github.com/VidyavathiGK.png" width="100px;" alt="Vidyavathi GK"/><br />
        <sub><b>Vidyavathi GK</b></sub>
      </a>
    </td>
  </tr>
  <tr>
    <td align="center" valign="top" width="14.28%">
      <a href="https://github.com/Onion0121">
        <img src="https://github.com/Onion0121.png" width="100px;" alt="Yassin Azzouzi"/><br />
        <sub><b>Yassin Azzouzi</b></sub>
      </a>
    </td>
  </tr>
</table>
</div>
<br>

```bash
pip install py-simple-wrap
```
 
```python
from py_simple import make_blank_file, miles_to_km, is_valid_email

make_blank_file("notes.txt")
print(miles_to_km(26.2))  # 42.16...
print(is_valid_email("hello@example.com"))  # True
```
 
> Full walkthrough in [QUICKSTART.md](QUICKSTART.md), or browse the **[documentation site](https://sara-czasak.github.io/py-simple-wrap/docs/)**.
 
<br>
## 😰 → 😎 See the difference
 
**The traditional way**
```python
import requests
from bs4 import BeautifulSoup

try:
    response = requests.get("https://github.com", timeout=10)
    response.raise_for_status()
    page = BeautifulSoup(response.content, "html.parser")
    title = page.title.string
except Exception as e:
    print("The site is down or address is invalid.")
```
 
**The py-simple-wrap way**
```python
from py_simple import get_page_title
 
print(get_page_title("https://github.com"))
```
 
<br>

## 📣 Share what you build

Made something with py-simple-wrap? Post about it and tag **#py-simple-wrap**. I'd love to see it!

## ⭐ If py-simple-wrap made something easier for you
 
Consider giving it a **star** — it helps other beginners find it. And if there's a function you wish existed, **fork it** and add it; this project grew because other people did exactly that.

## 📢 Got 2 minutes? Help shape what's next

Whether you've used one function or ten, your feedback decides what
gets built next. **[Take the 2-minute survey →](https://docs.google.com/forms/d/e/1FAIpQLSd3P4QCW9s-4izQlklN6q7kDGMlrgYe1I19ae6lAee5Mjbs5A/viewform?usp=header)**


<div align="center">

**[Contributing](CONTRIBUTING.md) · [Changelog](CHANGELOG.md) · [License](LICENSE.md)**
 
<sub>Built for beginners, grown by 50+ contributors ✨</sub>
 
</div>
