semvec/pypi-packages huggingface dataset:
graphreadability 0.0.3
A Python module for applying readability metrics graph and network visualizations.
Requires Python: >=3.7

# `graphreadability`

Python module for applying readability metrics to network and graph visualizations. This project is a work in progress that is being developed by Philip Mathieu (MS DS Student) as part of the Research Apprenticeship program at Northeastern University's Khoury College of Computer Science.

## Usage

```python
import networkx as nx
import graphreadability as gr

# Create a basic graph using NetworkX
G = nx.Graph()
G.add_nodes_from(
    [
        (1, {"x": 1, "y": 1}),
        (2, {"x": -1, "y": 1}),
        (3, {"x": -1, "y": -1}),
        (4, {"x": 1, "y": -1}),
        (5, {"x": 2, "y": 1}),
    ]
)
G.add_edges_from([(1, 2), (2, 3), (3, 4), (4, 2), (1, 3)])

# Create a MetricsSuite to calculate readability metrics
M = gr.MetricsSuite(G)
M.calculate_metrics()
M.pretty_print_metrics()
```

## Utilities

### Graph Digitizer

This utility is a python package using [`matplotlib`](https://matplotlib.org/) to show and image and allowing the user to click to add nodes, right click to delete nodes, and click two nodes sequentially to add edges.

```sh
python graphreadability/utils/digitize_graphs.py -h
usage: digitize_graphs.py [-h] [-i IMAGE] [-o OUTPUT]

Create a graph from an image.

options:
  -h, --help            show this help message and exit
  -i IMAGE, --image IMAGE
                        Path to the image to create a graph from.
  -o OUTPUT, --output OUTPUT
                        Path to save the graph to.
```

## Sources Cited

Metric definitions are derived from:
- C. Dunne, S. I. Ross, B. Shneiderman, and M. Martino. "Readability metric feedback for aiding node-link visualization designers," IBM Journal of Research and Development, 59(2/3) pages 14:1--14:16, 2015.

Initial inspiration was taken from [rpgove/greadability.js](https://github.com/rpgove/greadability/).

Code in [`graphreadability/metrics/`](graphreadability/metrics/) is in part derived from code originally published at https://github.com/gavjmooney/graph_metrics/ associated with the following publication:
```
@Conference{citekey,
  author       = "Gavin J. Mooney, Helen C. Purchase, Michael Wybrow, Stephen G. Kobourov",
  title        = "The Multi-Dimensional Landscape of Graph Drawing Metrics",
  booktitle    = "2024 IEEE 17th Pacific Visualization Symposium (PacificVis)",
  year         = "2024",
}
```

## License

Apache 2.0 - see [LICENSE.txt](./LICENSE.txt)
allanms 0.1.1
Una biblioteca para consultar cursos de la plataforma hack4u

# Hack4u Academy Courses Library

Una biblioteca Python para consultar cursos de la academia Hack4u, replicado por allanms 

## Cursos disponibles: 

Instala el paquete usando `pip3`: 

```python3
pip3 install allanms 
```

## Uso básico 

### Listar todos los cursos 

```python
from allanms import list_courses 

for course in list_courses():
    print(course)
```

### Obtener un curso por nombre 

```python 
from allanms import get_course_by_name 

course = get_course_by_name("Python Ofensivo")
print(course)
```

### Calcular duración total de los cursos 

```python3 
from allanms.utils import total_duration 

print(f"Duración total: {total_duration()} horas")
```
weight-training-tracker 0.16.1
A simple CLI-based app for tracking weight training.
Requires Python: >=3.6
Keywords: weight-training-tracker

=======================
Weight Training Tracker
=======================


A simple CLI-based app for tracking weight training.


Features
--------

* TBD

Credits
-------

This package was created with Cookiecutter_ and the `audreyr/cookiecutter-pypackage`_ project template.

.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage


=======
History
=======

0.1.0 (2024-02-11)
------------------

* First release on PyPI.
easycrop 0.0.3
Easy image Cropper CLI.
Requires Python: >=3.8

# CROP Images with CLI
Crops images with python using Pillow. Useful for cropping multiple images at the same time.
The dafult resolution is 1920x1080


## How to install
1. Install [pipx](https://github.com/pypa/pipx)
2. Install easycrop
```sh
pipx install easycrop
```

## How to use:
<details>
  <summary>Base Image</summary>

![Base image](https://github.com/moutella/crop/blob/main/examples/kanagawa.jpg?raw=True))

</details>

1. Single file

```sh
crop examples/kanagawa.jpg -height 300 -width 300
```
<details>
  <summary>Output Focused 300x300</summary>

  ![300x300](https://github.com/moutella/crop/blob/main/examples/kanagawa-300x300.jpg?raw=True))

</details>

1. Resize image to keep maximum information possible

```sh
crop examples/kanagawa.jpg -height 450 -width 450 -resize
```
<details>
  <summary>Output: resized then 450x450, </summary>

  ![450x450](https://github.com/moutella/crop/blob/main/examples/kanagawa-450x450.jpg?raw=True))

</details>

1. Using ratio instead of size, will get biggest possible:

```sh
crop examples/kanagawa.jpg -ratio 1:1  
```
<details>
  <summary>Output: 2990x2990</summary>
    
  ![2990x2990](https://github.com/moutella/crop/blob/main/examples/kanagawa-2990x2990.jpg?raw=True))

</details>


1. Make it recursive

```sh
crop -r {folder} -height {height} -width {width}
```
reactive-reference 0.2.0
A collection of mini projects for a reactive programming approach
Requires Python: <4.0,>=3.10

# Reactive Reference

This is a collection of mini projects with the intent to have a more reactive programming approach in Python.

## Event

A Producer/Subscriber library with Async capabilities.

### Main Entities

#### EventStream

A stream of data that triggers subscribers on new events. It is structured with Domains in mind, meaning the data can be sent to every subscriber listening or specifically to the Domain of the Producer.

#### EventSubscriber

A listener to the data emitted by the EventStream. Can listen to multiple Domains at a time, but can only have 1 main Domain.

#### EventProducer

Producer will emit data to the stream triggering the Subscribers. The data sent via the producer will be encapsulated in an Event object which will be stored in the stream and spread across.

### Key Points

* Each Subscriber can adhere to a ReplayStrategy for late joining
* Per design only one stream can exist (Singleton)
* Subscribers can also listen to lifecycle events emitted by the stream
pmxbot.webhooks 1.6.0
An HTTP-based webhook service for pmxbot
Requires Python: >=3.8

.. image:: https://img.shields.io/pypi/v/pmxbot.webhooks.svg
   :target: https://pypi.org/project/pmxbot.webhooks

.. image:: https://img.shields.io/pypi/pyversions/pmxbot.webhooks.svg

.. image:: https://github.com/jaraco/pmxbot.webhooks/actions/workflows/main.yml/badge.svg
   :target: https://github.com/jaraco/pmxbot.webhooks/actions?query=workflow%3A%22tests%22
   :alt: tests

.. image:: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/charliermarsh/ruff/main/assets/badge/v2.json
    :target: https://github.com/astral-sh/ruff
    :alt: Ruff

.. .. image:: https://readthedocs.org/projects/PROJECT_RTD/badge/?version=latest
..    :target: https://PROJECT_RTD.readthedocs.io/en/latest/?badge=latest

.. image:: https://img.shields.io/badge/skeleton-2024-informational
   :target: https://blog.jaraco.com/skeleton

Webhooks for `pmxbot <https://pypi.org/project/pmxbot>`_. Read the source
for details.

Bookmarklet
===========

This lib provides a bookmarklet
for readily sending messages to the pmxbot HTTP interface. To install it,
just open /bookmarklet in the API service. It will present a link.
Option-click the link and add it to your bookmarks. Give it a name like
"Send to pmxbot".

To use the bookmarklet, browse to any web page, then select the bookmarklet.
You will be prompted with a dialog with a channel and message. Specify the
channel and optionally edit the message. Then hit Enter or click Submit and
that message will be broadcast on the channel indicated.