Herramientas para Servextex
Project description
ServexTools
Herramientas avanzadas para sistemas empresariales Python/Flask
Descripción General
ServexTools es una colección de utilidades y componentes para acelerar el desarrollo de sistemas empresariales, especialmente aquellos basados en Flask y MongoDB. Incluye funciones para manejo de base de datos, generación de tablas HTML, manejo de sesiones, replicación de datos, logs avanzados, y más.
Características principales
- Integración con Flask y MongoDB: CRUD, replicación, manejo de sesiones y seguridad.
- Generación avanzada de tablas HTML: Paginación, formateo, totales, marcado condicional y procesamiento eficiente con Polars y Numpy.
- Utilidades de fecha/hora: Conversión, formateo y cálculo de diferencias.
- Logs y monitoreo: Escritura de logs con rotación automática y soporte para consola y procesos.
- Operaciones con archivos y directorios: Manipulación, borrado seguro, compresión/descompresión.
- Encriptación y seguridad: JWT, manejo seguro de datos sensibles.
- Componentes reutilizables: Manejo de sesiones, tablas, replicación, y más.
Estructura del Proyecto
ServexTools/
├── Tools.py # Utilidades generales (fechas, archivos, formateo, logs, API, etc.)
├── Table.py # Generación de tablas HTML avanzadas
├── ReplicaDb.py # Replicación de datos MongoDB
├── EscribirLog.py # Escritura y rotación de logs
├── GetTime.py # Utilidades de tiempo y fecha
├── Necesario.py # Manejo de sesiones y paginación avanzada
├── conexion.py # Conexión y operaciones con MongoDB/SQLite
├── socket_manager.py # Manejo de WebSockets con Flask-SocketIO
├── Enumerable.py # Enumeraciones y constantes
├── TablePV.py # Tablas para punto de venta
└── __init__.py # Inicialización del paquete
Uso Rápido
Conexión y operaciones básicas
from ServexTools import Tools
# Ejemplo: Insertar un documento en MongoDB
coleccion, cliente = Tools.Get('usuarios')
doc = {"nombre": "Juan", "edad": 30}
coleccion.insert_one(doc)
# Ejemplo: Obtener fecha formateada
from ServexTools import Tools
fecha = Tools.DateFormat("25/12/2023")
print(fecha)
Generación de tablas HTML
from ServexTools import Table
datos = [
{"Nombre": "Juan", "Edad": 30},
{"Nombre": "Ana", "Edad": 25}
]
columnas = ("Nombre", "Edad")
html = Table.CrearTabla(datos, NombreColumnas=columnas)
print(html)
Documentación de Componentes
Tools.py
- Utilidades generales para fechas, archivos, formateo, logs, encriptación y operaciones API.
- Funciones destacadas:
DateFormat,DateTimeFormat,StrToDate,StrToInt,FormatoMonedaOptenerDatos(request): Extrae y normaliza datos de un request FlaskEscribirLog(texto, tipo): Escribe logs rotativosEncriptar(datos, clave),DesEncriptar(datos, clave): Seguridad JWTTiempoEspera(tiempo, IsGevent): Espera con interrupción por archivo .kill
Table.py
- Generador de tablas HTML dinámicas con paginación, formateo y marcado condicional.
- Soporte para grandes volúmenes de datos usando Polars y Numpy.
- Ejemplo de uso en sección anterior.
ReplicaDb.py
- Replicación automática de operaciones MongoDB entre instancias.
- Clases:
ReplicaCollection,ReplicaDB,ReplicaCluster. - Métodos compatibles con PyMongo:
insert_one,update_one,delete_one, etc.
Necesario.py
- Manejo avanzado de sesiones y paginación de datos en MongoDB.
- Clase
Sessionpara almacenar grandes volúmenes en la base.
EscribirLog.py
- Escritura y rotación de logs por tipo (Error, Consola, Procesos, Update).
- Integración con consola y WebSockets.
conexion.py
- Abstracción para conexión MongoDB y SQLite.
- Procesamiento seguro de inserciones/actualizaciones.
Dependencias
- flask
- pymongo
- pytz
- PyJWT
- httpx
- gevent
- flask-socketio
- tqdm
- polars-lts-cpu
- numpy
Licencia
MIT - Ver archivo LICENSE
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file servextools-0.1.18.tar.gz.
File metadata
- Download URL: servextools-0.1.18.tar.gz
- Upload date:
- Size: 40.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9aa152ab92f45548305b4fe5029216880abfaa0b9c121551a9c4e3fb6cc34732
|
|
| MD5 |
ae815b1fa0154e87bc71b9c92c668e97
|
|
| BLAKE2b-256 |
bdd0d06fb99169b2b97f25cae1929be01732e5cf816b44aa49665cfb52a792c0
|
File details
Details for the file servextools-0.1.18-py3-none-any.whl.
File metadata
- Download URL: servextools-0.1.18-py3-none-any.whl
- Upload date:
- Size: 41.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2ae93cb3edc533ab4050d159efffe286cf8d751a6818ba99132b0a05f0599d1f
|
|
| MD5 |
54b396911b481996a09bc3ffe2b7f358
|
|
| BLAKE2b-256 |
72925167589f601c93c2954afa801ed9c77140cf8d23afdf5f9a135dd7afea1c
|