jerkjs 2.0.0 → 2.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/LICENSE +17 -16
  2. package/README.md +4 -6
  3. package/README.md.backup +169 -0
  4. package/cookies.txt +5 -0
  5. package/{doc → docs}/EXTENSION_MANUAL.md +9 -12
  6. package/{doc → docs}/FIREWALL_MANUAL.md +5 -8
  7. package/{doc → docs}/HOOKS_REFERENCE_IMPROVED.md +4 -7
  8. package/{doc → docs}/MANUAL_API_SDK.md +7 -10
  9. package/{doc → docs}/MARIADB_TOKENS_IMPLEMENTATION.md +0 -3
  10. package/{doc → docs}/MIDDLEWARE_MANUAL.md +6 -9
  11. package/{doc → docs}/OAUTH2_GOOGLE_MANUAL.md +3 -6
  12. package/{doc → docs}/frontend-and-sessions.md +6 -9
  13. package/examples/advanced_example.js +8 -8
  14. package/examples/basic_example.js +4 -4
  15. package/examples/frontend/README.md +3 -3
  16. package/examples/frontend/controllers/authController.js +2 -2
  17. package/examples/frontend/controllers/pageController.js +5 -5
  18. package/examples/mvc_example/app.js +2 -2
  19. package/examples/mvc_welcome/README.md +34 -0
  20. package/examples/mvc_welcome/app.js +50 -0
  21. package/examples/mvc_welcome/controllers/welcomeController.js +41 -0
  22. package/examples/mvc_welcome/package.json +26 -0
  23. package/examples/mvc_welcome/views/home/welcome.html +82 -0
  24. package/examples/public/README.md +2 -2
  25. package/examples/public/controllers/mainController.js +1 -1
  26. package/examples/v2/README.md +2 -2
  27. package/examples/v2/package.json +3 -3
  28. package/examples/v2.1_firewall_demo/README.md +2 -2
  29. package/examples/v2.1_firewall_demo/package.json +3 -3
  30. package/examples/v2.1_hooks_demo/README.md +4 -4
  31. package/examples/v2.1_hooks_demo/app.js +1 -1
  32. package/examples/v2.1_hooks_demo/package.json +3 -3
  33. package/examples/v2.1_openapi_demo/README.md +2 -2
  34. package/examples/v2.1_openapi_demo/app.js +1 -1
  35. package/examples/v2.1_openapi_demo/package.json +3 -3
  36. package/examples/v2_cors/README.md +1 -1
  37. package/examples/v2_cors/package.json +3 -3
  38. package/examples/v2_json_auth/README.md +2 -2
  39. package/examples/v2_json_auth/package.json +3 -3
  40. package/examples/v2_mariadb_auth/README.md +2 -2
  41. package/examples/v2_mariadb_auth/package.json +3 -3
  42. package/examples/v2_no_auth/README.md +2 -2
  43. package/examples/v2_no_auth/package.json +3 -3
  44. package/examples/v2_oauth/README.md +1 -1
  45. package/examples/v2_oauth/controllers/mainController.js +2 -2
  46. package/examples/v2_oauth/package.json +3 -3
  47. package/examples/v2_openapi/README.md +2 -2
  48. package/examples/v2_openapi/app.js +1 -1
  49. package/examples/v2_openapi/package.json +3 -3
  50. package/index.js +3 -3
  51. package/jerk.jpg +0 -0
  52. package/lib/core/handler.js +1 -1
  53. package/lib/core/hooks.js +1 -1
  54. package/lib/core/router.js +1 -1
  55. package/lib/core/server.js +1 -1
  56. package/lib/loader/controllerLoader.js +1 -1
  57. package/lib/loader/routeLoader.js +1 -1
  58. package/lib/middleware/auditLogger.js +1 -1
  59. package/lib/middleware/authenticator.js +1 -1
  60. package/lib/middleware/compressor.js +1 -1
  61. package/lib/middleware/cors.js +1 -1
  62. package/lib/middleware/firewall.js +1 -1
  63. package/lib/middleware/rateLimiter.js +1 -1
  64. package/lib/middleware/session.js +1 -1
  65. package/lib/middleware/validator.js +1 -1
  66. package/lib/mvc/controllerBase.js +1 -1
  67. package/lib/mvc/viewEngine.js +1 -1
  68. package/lib/utils/configParser.js +1 -1
  69. package/lib/utils/logger.js +1 -1
  70. package/lib/utils/openapiGenerator.js +1 -1
  71. package/lib/utils/tokenManager.js +1 -1
  72. package/package.json +4 -9
  73. package/v2examplle/v2_json_auth/README.md +2 -2
  74. package/v2examplle/v2_json_auth/package.json +4 -4
  75. package/v2examplle/v2_mariadb_auth/README.md +2 -2
  76. package/v2examplle/v2_mariadb_auth/package.json +4 -4
  77. package/v2examplle/v2_sqlite_auth/README.md +2 -2
  78. package/v2examplle/v2_sqlite_auth/package.json +4 -4
  79. package/doc/MANUAL_MVC.md +0 -397
  80. package/generate_token.js +0 -10
package/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Apache License
1
+ Apache License
2
2
  Version 2.0, January 2004
3
3
  http://www.apache.org/licenses/
4
4
 
@@ -100,24 +100,25 @@
100
100
  (c) You must retain, in the Source form of any Derivative Works
101
101
  that You distribute, all copyright, patent, trademark, and
102
102
  attribution notices from the Source form of the Work,
103
- excluding those notices that relate to any part of the
104
- Derivative Works; and
103
+ excluding those notices that do not pertain to any part of
104
+ the Derivative Works; and
105
105
 
106
106
  (d) If the Work includes a "NOTICE" text file as part of its
107
- distribution, then any Derivative Works that You create must
107
+ distribution, then any Derivative Works that You distribute must
108
108
  include a readable copy of the attribution notices contained
109
- within such NOTICE file, excluding those notices that relate to
110
- any part of the Derivative Works, in at least one of the following
111
- places: within a NOTICE text file distributed as part of the
112
- Derivative Works; within the Source form or documentation,
113
- if provided along with the Derivative Works; or, within a display
114
- generated by the Derivative Works, if and wherever such third-party
115
- notices normally appear. The contents of the NOTICE file are for
116
- informational purposes only and do not modify the License. You
117
- may add Your own attribution notices within Derivative Works that
118
- You distribute, alongside or as an addendum to the NOTICE text
119
- from the Work, provided that such additional attribution notices
120
- cannot be construed as modifying the License.
109
+ within such NOTICE file, excluding those notices that do not
110
+ pertain to any part of the Derivative Works, in at least one
111
+ of the following places: within a NOTICE text file distributed
112
+ as part of the Derivative Works; within the Source form or
113
+ documentation, if provided along with the Derivative Works; or,
114
+ within a display generated by the Derivative Works, if and
115
+ wherever such third-party notices normally appear. The contents
116
+ of the NOTICE file are for informational purposes only and
117
+ do not modify the License. You may add Your own attribution
118
+ notices within Derivative Works that You distribute, alongside
119
+ or as an addendum to the NOTICE text from the Work, provided
120
+ that such additional attribution notices cannot be construed
121
+ as modifying the License.
121
122
 
122
123
  You may add Your own copyright statement to Your modifications and
123
124
  may provide additional or different license terms and conditions
package/README.md CHANGED
@@ -5,8 +5,6 @@
5
5
  Visita nuestra página web: https://jerk.page.gd/
6
6
  Repositorio oficial: https://gitlab.com/bytedogssyndicate1/jerk/
7
7
 
8
- JERK Framework es un framework completo para construir APIs seguras y escalables en Node.js. Proporciona una arquitectura modular con soporte para autenticación, seguridad avanzada, enrutamiento flexible, gestión de sesiones, motor de plantillas MVC y muchas características más.
9
-
10
8
  ## Características
11
9
 
12
10
  - **Arquitectura Modular**: Componentes independientes para mayor flexibilidad
@@ -27,13 +25,13 @@ JERK Framework es un framework completo para construir APIs seguras y escalables
27
25
  ## Instalación
28
26
 
29
27
  ```bash
30
- npm install @jerkjs/jerk
28
+ npm install jerkjs
31
29
  ```
32
30
 
33
31
  ## Uso Básico
34
32
 
35
33
  ```javascript
36
- const { APIServer, Router, Logger } = require('@jerkjs/jerk');
34
+ const { APIServer, Router, Logger } = require('jerkjs');
37
35
 
38
36
  // Crear instancia del servidor
39
37
  const server = new APIServer({
@@ -105,7 +103,7 @@ El framework incluye múltiples capas de seguridad:
105
103
  El framework incluye un sistema de hooks y filters similar al de WordPress:
106
104
 
107
105
  ```javascript
108
- const { hooks } = require('@jerkjs/jerk');
106
+ const { hooks } = require('jerkjs');
109
107
 
110
108
  // Registrar una acción
111
109
  hooks.addAction('firewall_request_blocked', (rule, clientIP, req, res) => {
@@ -138,7 +136,7 @@ El framework incluye un motor de plantillas profesional con soporte para:
138
136
  El framework incluye un sistema completo de gestión de sesiones:
139
137
 
140
138
  ```javascript
141
- const { SessionManager } = require('@jerkjs/jerk');
139
+ const { SessionManager } = require('jerkjs');
142
140
 
143
141
  const sessionManager = new SessionManager({
144
142
  secret: 'your-session-secret',
@@ -0,0 +1,169 @@
1
+ # JERK Framework v2.0
2
+
3
+ ![JERK Framework Logo](jerk.jpg)
4
+
5
+ Visita nuestra página web: https://jerk.page.gd/
6
+ Repositorio oficial: https://gitlab.com/bytedogssyndicate1/jerk/
7
+
8
+ ## Características
9
+
10
+ - **Arquitectura Modular**: Componentes independientes para mayor flexibilidad
11
+ - **Seguridad Avanzada**: Firewall integrado (WAF) con detección de ataques
12
+ - **Sistema de Hooks**: Similar al sistema de WordPress para extensibilidad
13
+ - **Autenticación Flexible**: Soporte para JWT, API Keys, Basic Auth, OAuth2, OpenID Connect
14
+ - **Almacenamiento de Tokens**: Soporte para memoria, JSON, SQLite y MariaDB
15
+ - **Enrutamiento Avanzado**: Soporte para rutas parametrizadas y anidadas
16
+ - **Soporte para Frontend**: Capacidad de servir contenido HTML y otros tipos de contenido
17
+ - **Configuración de Content-Type**: Especificación de headers Content-Type en routes.json
18
+ - **Middlewares Integrados**: CORS, rate limiting, compresión, firewall, etc.
19
+ - **Gestión de Controladores**: Carga dinámica de controladores desde archivos
20
+ - **Carga de Rutas**: Definición de rutas desde archivos JSON
21
+ - **Sistema de Sesiones**: Gestión completa de sesiones con soporte para autenticación
22
+ - **Motor de Plantillas MVC**: Sistema profesional de vistas con soporte para filtros, helpers y hooks
23
+ - **Extensibilidad**: Sistema de hooks y filters para personalización
24
+
25
+ ## Instalación
26
+
27
+ ```bash
28
+ npm install jerkjs
29
+ ```
30
+
31
+ ## Uso Básico
32
+
33
+ ```javascript
34
+ const { APIServer, Router, Logger } = require('jerkjs');
35
+
36
+ // Crear instancia del servidor
37
+ const server = new APIServer({
38
+ port: 3000,
39
+ host: 'localhost'
40
+ });
41
+
42
+ // Crear instancia del logger
43
+ const logger = new Logger({ level: 'info' });
44
+
45
+ // Definir rutas
46
+ server.addRoute('GET', '/', (req, res) => {
47
+ res.writeHead(200, { 'Content-Type': 'application/json' });
48
+ res.end(JSON.stringify({ message: '¡Hola Mundo!' }));
49
+ });
50
+
51
+ // Iniciar el servidor
52
+ server.start();
53
+ ```
54
+
55
+ ## Componentes Principales
56
+
57
+ ### APIServer
58
+ Servidor HTTP/HTTPS básico con soporte para rutas parametrizadas, middlewares y configuración avanzada.
59
+
60
+ ### Router
61
+ Sistema de enrutamiento avanzado con soporte para rutas anidadas y prefijos.
62
+
63
+ ### Authenticator
64
+ Middleware de autenticación con soporte para múltiples métodos (JWT, API Keys, Basic Auth, OAuth2, OpenID Connect).
65
+
66
+ ### SecurityEnhancedServer
67
+ Servidor con funcionalidades de seguridad avanzada (WAF) integradas.
68
+
69
+ ### RouteLoader
70
+ Carga de rutas desde archivos JSON con soporte para autenticación, controladores y especificación de content-type.
71
+
72
+ ### TokenManager
73
+ Gestión de tokens JWT con diferentes tipos de almacenamiento (memoria, JSON, SQLite, MariaDB).
74
+
75
+ ### Firewall
76
+ Middleware de firewall con detección de patrones de ataque y listas blancas/negras.
77
+
78
+ ### Hooks System
79
+ Sistema de hooks y filters similar al de WordPress para extensibilidad.
80
+
81
+ ### SessionManager
82
+ Sistema completo de gestión de sesiones con soporte para autenticación basada en sesiones.
83
+
84
+ ### ViewEngine
85
+ Motor de plantillas profesional con soporte para filtros, helpers, condiciones, bucles y hooks.
86
+
87
+ ### ControllerBase
88
+ Controlador base que facilita el desarrollo de controladores MVC con soporte para vistas.
89
+
90
+ ## Seguridad
91
+
92
+ El framework incluye múltiples capas de seguridad:
93
+
94
+ - **Web Application Firewall (WAF)**: Detección de SQL injection, XSS, path traversal, etc.
95
+ - **Rate Limiting**: Limitación de peticiones por IP o usuario
96
+ - **Firewall**: Bloqueo automático por intentos fallidos
97
+ - **Listas Blancas/Negras**: Control de acceso por IP
98
+ - **Auditoría de Seguridad**: Registro de eventos de seguridad
99
+ - **Autenticación Robusta**: Soporte para múltiples métodos de autenticación
100
+
101
+ ## Sistema de Hooks
102
+
103
+ El framework incluye un sistema de hooks y filters similar al de WordPress:
104
+
105
+ ```javascript
106
+ const { hooks } = require('jerkjs');
107
+
108
+ // Registrar una acción
109
+ hooks.addAction('firewall_request_blocked', (rule, clientIP, req, res) => {
110
+ console.log(`Solicitud bloqueada: ${rule.name} para IP: ${clientIP}`);
111
+ });
112
+
113
+ // Registrar un filtro
114
+ hooks.addFilter('session_create_data', (userData, req) => {
115
+ return {
116
+ ...userData,
117
+ ipAddress: req.headers['x-forwarded-for'] || req.connection.remoteAddress,
118
+ createdAt: new Date().toISOString()
119
+ };
120
+ });
121
+ ```
122
+
123
+ ## Motor de Plantillas MVC
124
+
125
+ El framework incluye un motor de plantillas profesional con soporte para:
126
+
127
+ - Variables: `{{variable}}`
128
+ - Condiciones: `{{if variable}}contenido{{endif}}`
129
+ - Bucles: `{{foreach:array}}contenido{{endforeach}}`
130
+ - Inclusiones: `{{include:header}}`
131
+ - Filtros: `{{variable|upper}}`
132
+ - Helpers personalizados
133
+
134
+ ## Gestión de Sesiones
135
+
136
+ El framework incluye un sistema completo de gestión de sesiones:
137
+
138
+ ```javascript
139
+ const { SessionManager } = require('jerkjs');
140
+
141
+ const sessionManager = new SessionManager({
142
+ secret: 'your-session-secret',
143
+ timeout: 3600000 // 1 hora
144
+ });
145
+
146
+ // Usar como middleware
147
+ server.use(sessionManager.middleware());
148
+ ```
149
+
150
+ ## Ejemplos
151
+
152
+ El proyecto incluye varios ejemplos completos:
153
+
154
+ - **v2_json_auth**: Autenticación JWT con tokens almacenados en JSON
155
+ - **v2_mariadb_auth**: Autenticación JWT con tokens almacenados en MariaDB
156
+ - **v2_sqlite_auth**: Autenticación JWT con tokens almacenados en SQLite
157
+ - **public**: API pública de ejemplo con CORS y rate limiting
158
+ - **frontend**: Ejemplo de servidor que combina API y frontend con diferentes content-types
159
+ - **hooks**: Ejemplo de uso del sistema de hooks
160
+
161
+ Para ver los ejemplos completos, visita los directorios `v2examplle/` y `examples/`.
162
+
163
+ ## Contribuciones
164
+
165
+ Las contribuciones son bienvenidas. Por favor, abre un issue o envía un pull request en GitHub.
166
+
167
+ ## Licencia
168
+
169
+ Apache 2.0
package/cookies.txt ADDED
@@ -0,0 +1,5 @@
1
+ # Netscape HTTP Cookie File
2
+ # https://curl.se/docs/http-cookies.html
3
+ # This file was generated by libcurl! Edit at your own risk.
4
+
5
+ #HttpOnly_localhost FALSE / FALSE 1768539037 frontend_session 29d7cb4e270ec66c0c7aa5d7ebe08bb8014432b8fb7746edd3895fe176fccee0
@@ -1,8 +1,5 @@
1
1
  # Manual de Extensión del Framework API SDK
2
2
 
3
- Visita nuestra página web: https://jerk.page.gd/
4
- Repositorio oficial: https://gitlab.com/bytedogssyndicate1/jerk/
5
-
6
3
  ## Tabla de Contenidos
7
4
 
8
5
  1. [Introducción a la Extensión del Framework](#introducción-a-la-extensión-del-framework)
@@ -301,7 +298,7 @@ Ahora crearemos un ejemplo que demuestra cómo usar el adaptador de SQLite:
301
298
 
302
299
  ```javascript
303
300
  // examples/v2/sqlite_tokens_example.js
304
- const { JERK, Authenticator, Logger } = require('../../index');
301
+ const { APISDK, Authenticator, Logger } = require('../../index');
305
302
  const jwt = require('jsonwebtoken');
306
303
  const SQLiteTokenAdapter = require('../../lib/utils/sqliteTokenAdapter');
307
304
 
@@ -325,7 +322,7 @@ tokenAdapter.initialize()
325
322
  logger.info('✅ Conexión a SQLite establecida');
326
323
 
327
324
  // Crear instancia del servidor
328
- const server = new JERK({
325
+ const server = new APISDK({
329
326
  port: 8083,
330
327
  host: 'localhost'
331
328
  });
@@ -662,7 +659,7 @@ Agregamos la dependencia de SQLite al package.json:
662
659
 
663
660
  ```json
664
661
  {
665
- "name": "jerk",
662
+ "name": "apisdk",
666
663
  "version": "1.0.0",
667
664
  "description": "Framework para agilizar la creación de APIs",
668
665
  "main": "index.js",
@@ -696,7 +693,7 @@ Agregamos la dependencia de SQLite al package.json:
696
693
 
697
694
  ```javascript
698
695
  // Actualizar index.js para incluir el adaptador de SQLite
699
- const JERK = require('./lib/core/server');
696
+ const APISDK = require('./lib/core/server');
700
697
  const Router = require('./lib/core/router');
701
698
  const HandlerManager = require('./lib/core/handler');
702
699
  const Authenticator = require('./lib/middleware/authenticator');
@@ -716,7 +713,7 @@ const SQLiteTokenAdapter = require('./lib/utils/sqliteTokenAdapter'); // Nuevo a
716
713
 
717
714
  module.exports = {
718
715
  // Componentes fundamentales (v1.0)
719
- JERK,
716
+ APISDK,
720
717
  Router,
721
718
  HandlerManager,
722
719
  Authenticator,
@@ -738,7 +735,7 @@ module.exports = {
738
735
  };
739
736
 
740
737
  // También exportar clases individuales por conveniencia
741
- module.exports.JERK = APIServer;
738
+ module.exports.APISDK = APIServer;
742
739
  ```
743
740
 
744
741
  ## Guía de Implementación
@@ -856,14 +853,14 @@ describe('SQLiteTokenAdapter', () => {
856
853
 
857
854
  ```javascript
858
855
  // test_integration.js
859
- const { JERK, Authenticator } = require('./index');
856
+ const { APISDK, Authenticator } = require('./index');
860
857
  const SQLiteTokenAdapter = require('./lib/utils/sqliteTokenAdapter');
861
858
 
862
859
  async function testIntegration() {
863
860
  const adapter = new SQLiteTokenAdapter({ dbPath: './integration_test.sqlite' });
864
861
  await adapter.initialize();
865
862
 
866
- const server = new JERK({ port: 9999 });
863
+ const server = new APISDK({ port: 9999 });
867
864
  const authenticator = new Authenticator();
868
865
 
869
866
  // Registrar estrategia con SQLite
@@ -895,7 +892,7 @@ Proporcionar documentación clara sobre cómo usar la extensión:
895
892
  /**
896
893
  * Uso del adaptador de SQLite
897
894
  */
898
- const { JERK, Authenticator, SQLiteTokenAdapter } = require('jerk');
895
+ const { APISDK, Authenticator, SQLiteTokenAdapter } = require('apisdk');
899
896
 
900
897
  const adapter = new SQLiteTokenAdapter({
901
898
  dbPath: './tokens.sqlite',
@@ -1,8 +1,5 @@
1
1
  # Manual de Uso del Módulo de Firewall
2
2
 
3
- Visita nuestra página web: https://jerk.page.gd/
4
- Repositorio oficial: https://gitlab.com/bytedogssyndicate1/jerk/
5
-
6
3
  ## Índice
7
4
  1. [Introducción](#introducción)
8
5
  2. [Instalación y Configuración](#instalación-y-configuración)
@@ -22,7 +19,7 @@ El módulo de Firewall es una funcionalidad de seguridad integrada en el framewo
22
19
  El módulo de firewall está integrado en el framework y se puede importar directamente:
23
20
 
24
21
  ```javascript
25
- const { APIServer, Firewall, Logger } = require('jerk');
22
+ const { APIServer, Firewall, Logger } = require('apisdk');
26
23
  ```
27
24
 
28
25
  ## Uso Básico
@@ -135,7 +132,7 @@ firewall.addRule(
135
132
  El firewall emite varios eventos que puedes interceptar para extender su comportamiento:
136
133
 
137
134
  ```javascript
138
- const { HookSystem } = require('jerk');
135
+ const { HookSystem } = require('apisdk');
139
136
  const hooks = new HookSystem();
140
137
 
141
138
  // Hook cuando se recibe una solicitud
@@ -199,7 +196,7 @@ hooks.addFilter('modify_firewall_decision', (shouldBlock, req, res) => {
199
196
  Puedes extender la clase Firewall para añadir funcionalidades personalizadas:
200
197
 
201
198
  ```javascript
202
- const { Firewall } = require('jerk');
199
+ const { Firewall } = require('apisdk');
203
200
 
204
201
  class CustomFirewall extends Firewall {
205
202
  constructor(options = {}) {
@@ -307,7 +304,7 @@ console.log(status);
307
304
  ### Ejemplo Completo de API con Firewall
308
305
 
309
306
  ```javascript
310
- const { APIServer, Firewall, Logger, HookSystem } = require('jerk');
307
+ const { APIServer, Firewall, Logger, HookSystem } = require('apisdk');
311
308
 
312
309
  async function startSecureAPI() {
313
310
  // Crear servidor
@@ -369,7 +366,7 @@ startSecureAPI();
369
366
  ### Ejemplo de Extensión con Hooks
370
367
 
371
368
  ```javascript
372
- const { APIServer, Firewall, Logger, HookSystem } = require('jerk');
369
+ const { APIServer, Firewall, Logger, HookSystem } = require('apisdk');
373
370
 
374
371
  // Crear sistema de hooks
375
372
  const hooks = new HookSystem();
@@ -1,8 +1,5 @@
1
1
  # Sistema de Hooks, Filters y Actions del Framework API SDK JS
2
2
 
3
- Visita nuestra página web: https://jerk.page.gd/
4
- Repositorio oficial: https://gitlab.com/bytedogssyndicate1/jerk/
5
-
6
3
  ## Índice
7
4
  1. [Introducción](#introducción)
8
5
  2. [Glosario de Términos](#glosario-de-términos)
@@ -384,7 +381,7 @@ El framework API SDK JS implementa un sistema de Hooks y Filters similar al sist
384
381
  ### Ejemplo de Uso de Actions
385
382
 
386
383
  ```javascript
387
- const { HookSystem } = require('jerk');
384
+ const { HookSystem } = require('apisdk');
388
385
  const hooks = new HookSystem();
389
386
 
390
387
  // Registrar un action para registrar solicitudes bloqueadas
@@ -402,7 +399,7 @@ hooks.addAction('firewall_request_allowed', (req, res) => {
402
399
  ### Ejemplo de Uso de Filters
403
400
 
404
401
  ```javascript
405
- const { HookSystem } = require('jerk');
402
+ const { HookSystem } = require('apisdk');
406
403
  const hooks = new HookSystem();
407
404
 
408
405
  // Registrar un filter para modificar la huella digital del cliente
@@ -431,7 +428,7 @@ hooks.addFilter('modify_rate_limit_behavior', (rateLimitConfig, req) => {
431
428
  ### Ejemplo Integrado de Múltiples Hooks
432
429
 
433
430
  ```javascript
434
- const { APIServer, Firewall, HookSystem, Logger } = require('jerk');
431
+ const { APIServer, Firewall, HookSystem, Logger } = require('apisdk');
435
432
 
436
433
  async function startSecureAPIWithHooks() {
437
434
  const server = new APIServer({ port: 3000 });
@@ -493,7 +490,7 @@ startSecureAPIWithHooks();
493
490
  ### Ejemplo de Uso de Hooks en el Sistema MVC
494
491
 
495
492
  ```javascript
496
- const { APIServer, Router, ControllerBase, ViewEngine, HookSystem } = require('jerk');
493
+ const { APIServer, Router, ControllerBase, ViewEngine, HookSystem } = require('apisdk');
497
494
 
498
495
  // Crear instancia del sistema de hooks
499
496
  const hooks = new HookSystem();
@@ -1,8 +1,5 @@
1
1
  # Manual para Construir APIs con el Framework API SDK
2
2
 
3
- Visita nuestra página web: https://jerk.page.gd/
4
- Repositorio oficial: https://gitlab.com/bytedogssyndicate1/jerk/
5
-
6
3
  ## Índice
7
4
  1. [Introducción](#introducción)
8
5
  2. [Instalación y Configuración](#instalación-y-configuración)
@@ -34,7 +31,7 @@ const {
34
31
  Logger,
35
32
  TokenManager,
36
33
  OpenApiGenerator
37
- } = require('@jerkjs');
34
+ } = require('@apisdkjs');
38
35
  ```
39
36
 
40
37
  ## Conceptos Fundamentales
@@ -59,7 +56,7 @@ const {
59
56
  ### Servidor Básico
60
57
 
61
58
  ```javascript
62
- const { APIServer, Router, Logger } = require('@jerkjs');
59
+ const { APIServer, Router, Logger } = require('@apisdkjs');
63
60
 
64
61
  // Crear instancia del servidor
65
62
  const server = new APIServer({
@@ -315,8 +312,8 @@ const tokenPair = tokenManager.generateTokenPair(
315
312
  Para almacenamiento persistente de tokens, puedes usar adaptadores:
316
313
 
317
314
  ```javascript
318
- const MariaDBTokenAdapter = require('@jerkjs/lib/utils/mariadbTokenAdapter');
319
- const SQLiteTokenAdapter = require('@jerkjs/lib/utils/sqliteTokenAdapter');
315
+ const MariaDBTokenAdapter = require('@apisdkjs/lib/utils/mariadbTokenAdapter');
316
+ const SQLiteTokenAdapter = require('@apisdkjs/lib/utils/sqliteTokenAdapter');
320
317
 
321
318
  // Usar MariaDB
322
319
  const dbAdapter = new MariaDBTokenAdapter({
@@ -386,7 +383,7 @@ openApiGenerator.addDocumentationRoute(server);
386
383
  Carga controladores desde archivos:
387
384
 
388
385
  ```javascript
389
- const { ControllerLoader } = require('@jerkjs');
386
+ const { ControllerLoader } = require('@apisdkjs');
390
387
 
391
388
  const controllerLoader = new ControllerLoader();
392
389
 
@@ -435,7 +432,7 @@ Define rutas en archivos JSON y cárgalas dinámicamente:
435
432
  ```
436
433
 
437
434
  ```javascript
438
- const { RouteLoader } = require('@jerkjs');
435
+ const { RouteLoader } = require('@apisdkjs');
439
436
 
440
437
  const routeLoader = new RouteLoader();
441
438
  const server = new APIServer({ port: 3000 });
@@ -503,7 +500,7 @@ router.get('/users/:id', (req, res) => {
503
500
  Usa el ConfigParser para manejar configuraciones:
504
501
 
505
502
  ```javascript
506
- const { ConfigParser } = require('@jerkjs');
503
+ const { ConfigParser } = require('@apisdkjs');
507
504
 
508
505
  const configParser = new ConfigParser();
509
506
 
@@ -1,8 +1,5 @@
1
1
  # Implementación Completa: API SDK Framework v2.0 con Tokens en MariaDB
2
2
 
3
- Visita nuestra página web: https://jerk.page.gd/
4
- Repositorio oficial: https://gitlab.com/bytedogssyndicate1/jerk/
5
-
6
3
  ## Resumen Ejecutivo
7
4
 
8
5
  Hemos implementado exitosamente una solución completa de gestión de tokens con MariaDB para el API SDK Framework v2.0, demostrando:
@@ -1,8 +1,5 @@
1
1
  # Manual de Creación de Middleware para API SDK Framework
2
2
 
3
- Visita nuestra página web: https://jerk.page.gd/
4
- Repositorio oficial: https://gitlab.com/bytedogssyndicate1/jerk/
5
-
6
3
  ## Tabla de Contenidos
7
4
 
8
5
  1. [Introducción al Middleware](#introducción-al-middleware)
@@ -286,7 +283,7 @@ module.exports = AuditLogger;
286
283
 
287
284
  ```javascript
288
285
  // examples/v2/audit_middleware_example.js
289
- const { JERK, Logger } = require('../../index');
286
+ const { APISDK, Logger } = require('../../index');
290
287
  const AuditLogger = require('../../lib/middleware/auditLogger');
291
288
 
292
289
  // Crear instancia del logger
@@ -295,7 +292,7 @@ const logger = new Logger({ level: 'info', timestamp: true });
295
292
  logger.info('🔐 Iniciando ejemplo con middleware de auditoría');
296
293
 
297
294
  // Crear instancia del servidor
298
- const server = new JERK({
295
+ const server = new APISDK({
299
296
  port: 8084,
300
297
  host: 'localhost'
301
298
  });
@@ -388,7 +385,7 @@ process.on('SIGINT', gracefulShutdown);
388
385
 
389
386
  ```javascript
390
387
  // test_audit_middleware.js
391
- const { JERK } = require('../index');
388
+ const { APISDK } = require('../index');
392
389
  const AuditLogger = require('../lib/middleware/auditLogger');
393
390
  const fs = require('fs');
394
391
  const path = require('path');
@@ -397,7 +394,7 @@ async function testAuditMiddleware() {
397
394
  console.log('🧪 Probando middleware de auditoría...\n');
398
395
 
399
396
  // Crear servidor de prueba
400
- const server = new JERK({ port: 9998 });
397
+ const server = new APISDK({ port: 9998 });
401
398
 
402
399
  // Crear middleware de auditoría para pruebas
403
400
  const auditLogger = new AuditLogger({
@@ -460,9 +457,9 @@ module.exports = {
460
457
 
461
458
  ```javascript
462
459
  // Ejemplo de uso en una aplicación real
463
- const { APISDK, AuditLogger } = require('jerk');
460
+ const { APISDK, AuditLogger } = require('apisdk');
464
461
 
465
- const server = new JERK({ port: 3000 });
462
+ const server = new APISDK({ port: 3000 });
466
463
 
467
464
  // Middleware de auditoría para eventos de seguridad
468
465
  const securityAudit = new AuditLogger({
@@ -1,8 +1,5 @@
1
1
  # Manual para Implementar OAuth 2.0 con Google usando el Framework API SDK
2
2
 
3
- Visita nuestra página web: https://jerk.page.gd/
4
- Repositorio oficial: https://gitlab.com/bytedogssyndicate1/jerk/
5
-
6
3
  ## Índice
7
4
  1. [Introducción](#introducción)
8
5
  2. [Requisitos Previos](#requisitos-previos)
@@ -70,7 +67,7 @@ OAuth 2.0 es un protocolo de autorización que permite a aplicaciones de tercero
70
67
  ### Paso 1: Instalar el Framework API SDK
71
68
 
72
69
  ```bash
73
- npm install jerk
70
+ npm install apisdk
74
71
  ```
75
72
 
76
73
  ### Paso 2: Configurar variables de entorno
@@ -92,7 +89,7 @@ const {
92
89
  RouteLoader,
93
90
  Logger,
94
91
  TokenManager
95
- } = require('jerk');
92
+ } = require('apisdk');
96
93
  ```
97
94
 
98
95
  ## Implementación del Flujo OAuth 2.0
@@ -345,7 +342,7 @@ const {
345
342
  Authenticator,
346
343
  Router,
347
344
  Logger
348
- } = require('jerk');
345
+ } = require('apisdk');
349
346
 
350
347
  const jwt = require('jsonwebtoken');
351
348
 
@@ -1,8 +1,5 @@
1
1
  # Frontend y Sesiones con API SDK JS
2
2
 
3
- Visita nuestra página web: https://jerk.page.gd/
4
- Repositorio oficial: https://gitlab.com/bytedogssyndicate1/jerk/
5
-
6
3
  ## Introducción
7
4
 
8
5
  API SDK JS no solo es un framework para crear APIs, sino que ahora también soporta la creación de aplicaciones web completas con frontend y sistema de sesiones. Esta funcionalidad permite a los desarrolladores crear aplicaciones web completas con autenticación basada en sesiones, almacenamiento de datos y mucho más.
@@ -50,7 +47,7 @@ El framework ahora puede servir diferentes tipos de contenido:
50
47
  Para usar el sistema de sesiones, primero debes configurar el middleware en tu aplicación:
51
48
 
52
49
  ```javascript
53
- const { APIServer, SessionManager, Cors } = require('@jerkjs/jerk');
50
+ const { APIServer, SessionManager, Cors } = require('@apisdkjs/apisdkjs');
54
51
 
55
52
  async function startServer() {
56
53
  const server = new APIServer({
@@ -190,7 +187,7 @@ El sistema de sesiones está completamente integrado con el sistema de hooks, fi
190
187
  #### Registrar actividad de sesión
191
188
 
192
189
  ```javascript
193
- const { hooks } = require('@jerkjs/jerk');
190
+ const { hooks } = require('@apisdkjs/apisdkjs');
194
191
 
195
192
  // Registrar cuando se crea una sesión
196
193
  hooks.addAction('session_created', (sessionId, sessionData) => {
@@ -206,7 +203,7 @@ hooks.addAction('session_destroyed', (sessionId, sessionData) => {
206
203
  #### Modificar datos de sesión antes de crearla
207
204
 
208
205
  ```javascript
209
- const { hooks } = require('@jerkjs/jerk');
206
+ const { hooks } = require('@apisdkjs/apisdkjs');
210
207
 
211
208
  // Añadir información de IP y fecha a los datos de sesión
212
209
  hooks.addFilter('session_create_data', (userData, req) => {
@@ -221,7 +218,7 @@ hooks.addFilter('session_create_data', (userData, req) => {
221
218
  #### Personalizar el manejo de autenticación fallida
222
219
 
223
220
  ```javascript
224
- const { hooks } = require('@jerkjs/jerk');
221
+ const { hooks } = require('@apisdkjs/apisdkjs');
225
222
 
226
223
  // Registrar intentos de acceso no autorizado
227
224
  hooks.addAction('session_auth_failed', (req, res, redirectTo) => {
@@ -238,7 +235,7 @@ hooks.addAction('session_auth_failed', (req, res, redirectTo) => {
238
235
  #### Extender datos de sesión durante la actualización
239
236
 
240
237
  ```javascript
241
- const { hooks } = require('@jerkjs/jerk');
238
+ const { hooks } = require('@apisdkjs/apisdkjs');
242
239
 
243
240
  // Añadir marca de tiempo a cada actualización de sesión
244
241
  hooks.addFilter('session_update_data', (newData, req, sessionId) => {
@@ -262,7 +259,7 @@ const {
262
259
  Logger,
263
260
  Cors,
264
261
  SessionManager
265
- } = require('@jerkjs/jerk');
262
+ } = require('@apisdkjs/apisdkjs');
266
263
 
267
264
  async function startServer() {
268
265
  const server = new APIServer({