# 🎩 Smooth Criminal
**A Python performance acceleration toolkit with the soul of Michael Jackson.**
[](https://www.python.org/)
[](LICENSE)
---
## 🚀 ¿Qué es esto?
**Smooth Criminal** es una librería de Python para acelerar funciones y scripts automáticamente usando:
- 🧠 [Numba](https://numba.pydata.org/)
- ⚡ Asyncio y threading
- 📊 Dashboard visual con [Flet](https://flet.dev)
- 🧪 Benchmarks y profiling
- 🎶 Estilo, carisma y mensajes inspirados en MJ
---
## 💡 Características principales
| Decorador / Función | Descripción |
|-------------------------|--------------------------------------------------------|
| `@smooth` | Aceleración con Numba (modo sigiloso y rápido) |
| `@moonwalk` | Convierte funciones en corutinas `async` sin esfuerzo |
| `@thriller` | Benchmark antes y después (con ritmo) |
| `@jam(workers=n)` | Paralelismo automático con ThreadPoolExecutor |
| `@black_or_white(mode)` | Optimiza tipos numéricos (`float32` vs `float64`) |
| `@bad` | Modo de optimización agresiva (`fastmath`) |
| `@beat_it` | Fallback automático si algo falla |
| `dangerous(func)` | Mezcla poderosa de decoradores (`@bad + @thriller`) |
| `profile_it(func)` | Estadísticas detalladas de rendimiento |
| `analyze_ast(func)` | Análisis estático para detectar código optimizable |
---
## 🧠 Dashboard visual
Ejecuta el panel interactivo para ver métricas de tus funciones decoradas:
```bash
python -m smooth_criminal.dashboard
```
O bien:
````bash
python scripts/example_flet_dashboard.py
````
- Tabla con tiempos, decoradores y puntuaciones
- Botones para exportar CSV, limpiar historial o ver gráfico
- Interfaz elegante con Flet (modo oscuro)
## ⚙️ Instalación
````bash
pip install smooth-criminal
````
O para desarrollo local:
````bash
git clone https://github.com/Alphonsus411/smooth_criminal.git
cd smooth_criminal
pip install -e .
````
## 💃 Ejemplo rápido
````python
from smooth_criminal import smooth, thriller
@thriller
@smooth
def square(n):
return [i * i for i in range(n)]
print(square(10))
````
## 🧪 CLI interactiva
````bash
smooth-criminal analyze my_script.py
````
Esto analizará tu código buscando funciones lentas, bucles, range(), etc.
## 📚 Documentación
Próximamente en ReadTheDocs…
## 📝 Licencia
MIT © Adolfo González
## 🎤 Créditos
- Michael Jackson por la inspiración musical 🕺
- Numba, NumPy, asyncio por la base técnica
- Flet por el dashboard elegante
Raw data
{
"_id": null,
"home_page": "https://github.com/Alphonsus411/smooth_criminal",
"name": "smooth-criminal",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": null,
"author": "Adolfo Gonz\u00e1lez",
"author_email": "tucorreo@example.com",
"download_url": "https://files.pythonhosted.org/packages/01/88/f009bcb252df801db1c76bb1701b29f1def4633d3ee0cd7d9c201e98293a/smooth_criminal-0.4.0.tar.gz",
"platform": null,
"description": "# \ud83c\udfa9 Smooth Criminal\r\n\r\n**A Python performance acceleration toolkit with the soul of Michael Jackson.**\r\n\r\n[](https://www.python.org/)\r\n[](LICENSE)\r\n\r\n---\r\n\r\n## \ud83d\ude80 \u00bfQu\u00e9 es esto?\r\n\r\n**Smooth Criminal** es una librer\u00eda de Python para acelerar funciones y scripts autom\u00e1ticamente usando:\r\n- \ud83e\udde0 [Numba](https://numba.pydata.org/)\r\n- \u26a1 Asyncio y threading\r\n- \ud83d\udcca Dashboard visual con [Flet](https://flet.dev)\r\n- \ud83e\uddea Benchmarks y profiling\r\n- \ud83c\udfb6 Estilo, carisma y mensajes inspirados en MJ\r\n\r\n---\r\n\r\n## \ud83d\udca1 Caracter\u00edsticas principales\r\n\r\n| Decorador / Funci\u00f3n | Descripci\u00f3n |\r\n|-------------------------|--------------------------------------------------------|\r\n| `@smooth` | Aceleraci\u00f3n con Numba (modo sigiloso y r\u00e1pido) |\r\n| `@moonwalk` | Convierte funciones en corutinas `async` sin esfuerzo |\r\n| `@thriller` | Benchmark antes y despu\u00e9s (con ritmo) |\r\n| `@jam(workers=n)` | Paralelismo autom\u00e1tico con ThreadPoolExecutor |\r\n| `@black_or_white(mode)` | Optimiza tipos num\u00e9ricos (`float32` vs `float64`) |\r\n| `@bad` | Modo de optimizaci\u00f3n agresiva (`fastmath`) |\r\n| `@beat_it` | Fallback autom\u00e1tico si algo falla |\r\n| `dangerous(func)` | Mezcla poderosa de decoradores (`@bad + @thriller`) |\r\n| `profile_it(func)` | Estad\u00edsticas detalladas de rendimiento |\r\n| `analyze_ast(func)` | An\u00e1lisis est\u00e1tico para detectar c\u00f3digo optimizable |\r\n\r\n---\r\n\r\n## \ud83e\udde0 Dashboard visual\r\n\r\nEjecuta el panel interactivo para ver m\u00e9tricas de tus funciones decoradas:\r\n\r\n```bash\r\npython -m smooth_criminal.dashboard\r\n```\r\nO bien:\r\n\r\n````bash\r\npython scripts/example_flet_dashboard.py\r\n````\r\n\r\n- Tabla con tiempos, decoradores y puntuaciones\r\n\r\n- Botones para exportar CSV, limpiar historial o ver gr\u00e1fico\r\n\r\n- Interfaz elegante con Flet (modo oscuro)\r\n\r\n## \u2699\ufe0f Instalaci\u00f3n\r\n\r\n````bash\r\npip install smooth-criminal\r\n````\r\n\r\nO para desarrollo local:\r\n\r\n````bash\r\ngit clone https://github.com/Alphonsus411/smooth_criminal.git\r\ncd smooth_criminal\r\npip install -e .\r\n````\r\n\r\n\r\n## \ud83d\udc83 Ejemplo r\u00e1pido\r\n\r\n````python\r\nfrom smooth_criminal import smooth, thriller\r\n\r\n@thriller\r\n@smooth\r\ndef square(n):\r\n return [i * i for i in range(n)]\r\n\r\nprint(square(10))\r\n````\r\n\r\n## \ud83e\uddea CLI interactiva\r\n\r\n````bash\r\nsmooth-criminal analyze my_script.py\r\n````\r\n\r\nEsto analizar\u00e1 tu c\u00f3digo buscando funciones lentas, bucles, range(), etc.\r\n\r\n## \ud83d\udcda Documentaci\u00f3n\r\n\r\nPr\u00f3ximamente en ReadTheDocs\u2026\r\n\r\n## \ud83d\udcdd Licencia\r\n\r\nMIT \u00a9 Adolfo Gonz\u00e1lez\r\n\r\n\r\n## \ud83c\udfa4 Cr\u00e9ditos\r\n\r\n- Michael Jackson por la inspiraci\u00f3n musical \ud83d\udd7a\r\n\r\n- Numba, NumPy, asyncio por la base t\u00e9cnica\r\n\r\n- Flet por el dashboard elegante\r\n\r\n",
"bugtrack_url": null,
"license": null,
"summary": "Dashboard de an\u00e1lisis de rendimiento con decoradores inteligentes",
"version": "0.4.0",
"project_urls": {
"Homepage": "https://github.com/Alphonsus411/smooth_criminal"
},
"split_keywords": [],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "1defe24ff8ccee46f331d588de7dc90a8c882fca7cb6716b6053200ef0f1b360",
"md5": "ff785c5cfec794ba74ef8f1051c9980a",
"sha256": "dae57cfde38fd3eb0022624815c4b603aea1c6cdc5147a3ca3e637074bd349b0"
},
"downloads": -1,
"filename": "smooth_criminal-0.4.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "ff785c5cfec794ba74ef8f1051c9980a",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 18761,
"upload_time": "2025-07-24T17:30:20",
"upload_time_iso_8601": "2025-07-24T17:30:20.462994Z",
"url": "https://files.pythonhosted.org/packages/1d/ef/e24ff8ccee46f331d588de7dc90a8c882fca7cb6716b6053200ef0f1b360/smooth_criminal-0.4.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "0188f009bcb252df801db1c76bb1701b29f1def4633d3ee0cd7d9c201e98293a",
"md5": "a02e658271783e648630d2b1998de610",
"sha256": "6334b17f768de35e82d7ba01cc0197e52a780fc15664acb3f11637617e8e6fbf"
},
"downloads": -1,
"filename": "smooth_criminal-0.4.0.tar.gz",
"has_sig": false,
"md5_digest": "a02e658271783e648630d2b1998de610",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 20502,
"upload_time": "2025-07-24T17:30:21",
"upload_time_iso_8601": "2025-07-24T17:30:21.286274Z",
"url": "https://files.pythonhosted.org/packages/01/88/f009bcb252df801db1c76bb1701b29f1def4633d3ee0cd7d9c201e98293a/smooth_criminal-0.4.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-24 17:30:21",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Alphonsus411",
"github_project": "smooth_criminal",
"github_not_found": true,
"lcname": "smooth-criminal"
}