semvec/pypi-packages huggingface dataset:
Ara-core 1.1.1
Lightweight minimalistic Ara framework
Requires Python: >=3.8

# Ara_core

Ara.Core is a lightweight Python framework for building interactive applications with GLFW.
It provides an easy way to manage windows, handle input, integrate modules, and run the main loop with logging and error handling out of the box.

---

Features

Window Management – Create and control an OpenGL context window.

Input Handling – High-level API for keyboard and mouse state:

pressed, down, and up queries for keys and mouse buttons

Cursor locking, movement delta, and scroll tracking

Module System – Plug in custom modules with lifecycle methods

Timing Utilities – Frame delta (dt), elapsed time, and FPS measurement.

Logging – Integrated logging system with configurable levels.

Callbacks – Flexible callback hooks in the main loop.


---

Quick Start
```
from ara_core import App

# Create application instance
core = App(title="My First App", width=1280, height=720, log_level="info")

def render(core):
    print("GUI rendering")

def update(core):
    print(f"Frame time: {core.dt()}")

def terminate(core):
    print("Cleanup done!")

# Run with custom callbacks
core.run(render, callback, terminate)
```
---

Input API
```py
core.key_pressed("w")      # True while 'W' is held
core.key_down("space")     # True only on the frame space was pressed
core.key_up("escape")      # True only on the frame escape was released

core.mouse_button_pressed("left")
pos = core.get_mouse_pos()
dx, dy = core.get_mouse_delta()
scroll = core.get_mouse_scroll()
```

---

Module System

Modules can be classes or instances.
They may implement any of the lifecycle methods:
```py
class ExampleModule:
    NAME = "module_example"

    DEPENDENCIES = {
        "update_callback": {
            "before": ["core.update"],
            "after": ["module_example.other_callback"]
        },

        "other_callback": {
            "before": [],
            "after": []
        }
    }

    def __init__(self, core):
        self.core = core

    def init(self):
        print("Module initialized")

    def update_callback(self):
        print("Module updated")

    def other_callback(self):
        print("Module other callback")

    def terminate(self):
        print("Module terminated")

core.add_module(ExampleModule)
```

---

Utilities

app.close() – close the window

app.time() – elapsed time since start

app.dt() – delta time of last frame

app.fps() – current frames per second


---

Requirements

Python 3.8+

GLFW

Ara_log

Install dependencies:

pip install glfw, pyopengl, ara_log


---

License

MIT License.
Feel free to use and modify for your projects.
crosslab-soa-service-parameter 0.4.0
The CrossLab SOA parameter Service.
Requires Python: <3.14,>=3.9

This is the Parameter service to use as a Crosslab SOA service. It
allows to transmit variouse numeric parameters / values between
different devices.

Parameter Producer
------------------

.. code:: python

   service = ParameterService__Producer(
       "position",
       [
           {"name": "x", "unit": "m", "minimum": -1.2, "maximum": 1.2},
           {"name": "y", "unit": "m", "minimum": -1.2, "maximum": 1.2},
           {"name": "z", "unit": "m", "minimum": 0, "maximum": 0.5},
       ],
   )
   deviceHandler.add_service(service)

When any parameter changes (or is initialized) the service inform the
service via:

.. code:: python

   await service.updateParameter("x", 0.5)

Parameter Consumer
==================

.. code:: python

   service = ParameterService__Consumer(
       "position",
       [
           {"name": "x", "unit": "m"},
           {"name": "y", "unit": "m"},
           {"name": "z", "unit": "m", "minimum": 0, "maximum": 1},
           {"name": "ANY", "unit": "ANY"},
       ],
   )

   deviceHandler.add_service(service)

The special name / unit “ANY” allows to receive any parameter. When a
new parameter gets connected / disconnect the service will emit the
following callback:

.. code:: python

   def parameterListChanged(event: ParameterListChangedEvent):
       print(event)
       # event.parameters is a list of all parameters

   service.on("parameterListChanged", parameterListChanged)

When a parameter changes the service will emit the following callback:

.. code:: python

   def parameterChanged(event: ParameterChangedEvent):
       print(event)
       # event.parameter is the changed parameter

   service.on("parameterChanged", parameterChanged)
jk_systools 0.2025.8.24
This python tool provides alternatives and additions to classic Linux system tools.
Requires Python: >=3.8
Keywords: console, terminal, cli

jk_systools
===========

Introduction
------------

This python tool provides alternatives and additions to classic Linux system tools.

Information about this module can be found here:

* [github.org](https://github.com/jkpubsrc/python-module-jk-systools)
* [pypi.python.org](https://pypi.python.org/pypi/jk_systools)

How to use this module
----------------------

### Commands

* `jk_df` : Alternative to `df`
* `jk_mount` : Alternative to `mount`

Contact Information
-------------------

This is Open Source code. That not only gives you the possibility of freely using this code it also
allows you to contribute. Feel free to contact the author(s) of this software listed below, either
for comments, collaboration requests, suggestions for improvement or reporting bugs:

* Jürgen Knauth: pubsrc@binary-overflow.de

License
-------

This software is provided under the following license:

* Apache Software License 2.0
reddit-export 0.2.2
export your Reddit data to JSON
Requires Python: >=3.9

# 👽 reddit data exporter

Export your Reddit data for analysis/RAG etc.

To run:

```bash
pipx reddit-export your-username
```

Then check the `./data` dir for your JSON export.

* ▶️ Run multiple times to append to the json.
* ✅ Yes, it'll make nice patches.
* ⏩ IIRC won't search past the first archived post.

## 🔗 Links

* [🏠 home](https://bitplane.net/dev/python/reddit-exporter)
  * [📚 pydoc](https://bitplane.net/dev/python/reddit-exporter/pydoc)
* [😺 github](https://github.com/bitplane/reddit-exporter)
* [🐍 pypi](https://pypi.org/project/reddit-exporter)

## ⚖️  License

WTFPL with one additional clause:

1. Don't blame me.
ids-iforest 0.1.0
Network intrusion detection system based on Isolation Forest and PyShark
Requires Python: >=3.10
Keywords: ids, machine learning, isolation forest, network, security

# IDS-IForest

Network intrusion detection system based on Isolation Forest and PyShark.

## Overview

This package provides tools for network traffic analysis and anomaly detection using machine learning. It uses the Isolation Forest algorithm to detect unusual network behavior that may indicate potential security threats.

## Features

- Train anomaly detection models on network traffic data
- Detect anomalies in live network traffic or PCAP files
- Convert PCAP files to flow-based CSV format
- Generate synthetic datasets for testing

## Installation

```bash
pip install ids-iforest
```

## Usage

### Training a model

```bash
ids-iforest-train --input data/train.csv --output models/ids_iforest.joblib
```

### Detecting anomalies

```bash
ids-iforest-detect --model models/ids_iforest.joblib --interface eth0
```

### Converting PCAP to CSV

```bash
ids-iforest-pcap2csv --input capture.pcap --output flows.csv
```

## License

This project is licensed under the MIT License - see the LICENSE file for details.
songfinder 1.2.3
Slide creation and presentation
Requires Python: >=3.7

# Dependances
Songfinder utilise :
- `git` : pour le partage de la base de donnee de chants
- `pdflatex` : pour la generation de fichiers PDF

Ces logiciels doivent etre installes pour utiliser ces fonctionalitees.

# Installation
- Depuis un terminal (python doit etre installe) : `pip install songfinder[gui]`
- Depuis l'installeur Windows : [http://devotion-officiel.fr/partage/soft/songFinder/](http://devotion-officiel.fr/partage/soft/songFinder/)

# Recuperer la base de donnees des chants :
La base de donnees est stocke dans un depot git sur bitbucket.
Pour cloner le depot depuis songfinder :
- Aller dans `Editer->Parametres Generaux` et cocher `Synchroniser la base de donnees`.
- Confirmer et remplir les trois champs :
	- Chemin : *https://epef@bitbucket.org/epef/songfinderdata.git*
	- Utilisateur : *[Votre pseudo/prenom]*
	- Mot de passe : *[Me contacter]*
- Cliquer sur `Cloner`.

# Interface graphique
L'interface est organise en trois sections principales :
- Zone de recherche des chants : en haut a gauche
- Zone de gestion des listes de chants : en bas a gauche
- Zone d'edition des chants : a droite

# Interface ligne de commande
Une interface en ligne de commande est disponible se referer a la documentation  : `songfinder --help`

# Editer un chant
- Selectionner le chant voulu dans la zone de recherche
- Utiliser les elements de syntaxes suivants pour controler le decoupage en diapos :
	- `\ss` : Diapo pour un couplet
	- `\sc` : Diapo pour un refrain
	- `\spc` : Diapo pour un pre-refrain
	- `\sb` : Diapo pour un pont
	- `\l` : forcer un saut de ligne
- Un marqueur de diapo qui n'est pas suivi de texte affichera une diapo dont le contenu sera la copie de la derniere diapo appartenant au meme groupe

# Ajouter des accords :

- Selectionner un chant
- Ajouter une ligne debutant par `\ac` et continuant par les accords devant etre affiches.
- Les accords sont associes aux lignes juste au dessus la ligne contenant les accords.
- Les accords peuvent etre renseigne dans la notation francophone ou anglophone.
- Ne remplir les accords que pour un couplet et un refrain, pas besoin de dupliquer chaque serie d'accords.
- Renseigner la tonalite et le nombre de demis ton de transposition (en haut).


# Envoyer les modifications et recuperer celles des autres contributeurs :
- La commande `git` doit etre disponible
- Dans le menu `Reception/Envoi`, cliquer sur `Envoyer les chants` ou `Recevoir les chants`
- Avant des faire des modifications, il faut verifier que quelqu'un d'autre ne les ai pas deja faite en cliquant sur `Recevoir les chants`.
- Apres avoir fait les modifications, il faut envoyer les chants en cliquant sur `Envoyer les chants`.


# Creer un PDF :
- La commande `pdflatex` doit etre disponible
- Faire un double clique sur un chant dans la liste des resultats de recherche (en haut) pour le mettre dans la liste des selections (en bas).
- Repeter cette precedente etape pour tous les chants devant etre dans le PDF
- Dans le menu `PDF` cliquer sur `Generer un fichier PDF`
- Cocher les options de mise en page souhaitees