liberty-framework 6.0.44__tar.gz → 6.0.45__tar.gz

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 (221) hide show
  1. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/MANIFEST.in +1 -0
  2. liberty_framework-6.0.45/PKG-INFO +221 -0
  3. liberty_framework-6.0.45/liberty_framework.egg-info/PKG-INFO +221 -0
  4. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/setup.py +8 -1
  5. liberty_framework-6.0.44/PKG-INFO +0 -79
  6. liberty_framework-6.0.44/liberty_framework.egg-info/PKG-INFO +0 -79
  7. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/LICENSE +0 -0
  8. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/README.md +0 -0
  9. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/.DS_Store +0 -0
  10. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/__init__.py +0 -0
  11. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/__pycache__/__init__.cpython-312.pyc +0 -0
  12. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/__pycache__/main.cpython-312.pyc +0 -0
  13. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/__pycache__/test.cpython-312.pyc +0 -0
  14. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/alembic/README +0 -0
  15. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/alembic/__pycache__/__init__.cpython-312.pyc +0 -0
  16. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/alembic/__pycache__/env.cpython-312.pyc +0 -0
  17. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/alembic/env.py +0 -0
  18. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/alembic/script.py.mako +0 -0
  19. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/alembic/versions/README +0 -0
  20. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/alembic/versions/__pycache__/07301a1e0a40_upgrade.cpython-312.pyc +0 -0
  21. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/alembic/versions/__pycache__/6d15b02a5d62_upgrade.cpython-312.pyc +0 -0
  22. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/alembic/versions/__pycache__/97ce2af21b7b_upgrade.cpython-312.pyc +0 -0
  23. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/alembic/versions/__pycache__/abebaaa0b8b5_upgrade.cpython-312.pyc +0 -0
  24. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/alembic/versions/__pycache__/dd5d460a6436_upgrade.cpython-312.pyc +0 -0
  25. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/alembic/versions/__pycache__/ecb84318e633_upgrade.cpython-312.pyc +0 -0
  26. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/alembic/versions/__pycache__/f93e0f531f2a_upgrade.cpython-312.pyc +0 -0
  27. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/alembic/versions/__pycache__/feb86bf02dac_upgrade.cpython-312.pyc +0 -0
  28. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/alembic.ini +0 -0
  29. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/business/__init__.py +0 -0
  30. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/business/__pycache__/__init__.cpython-312.pyc +0 -0
  31. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/business/__pycache__/oracle.cpython-312.pyc +0 -0
  32. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/business/__pycache__/postgres.cpython-312.pyc +0 -0
  33. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/business/oracle.py +0 -0
  34. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/business/postgres.py +0 -0
  35. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/config/__init__.py +0 -0
  36. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/config/__pycache__/__init__.cpython-312.pyc +0 -0
  37. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/config/__pycache__/config.cpython-312.pyc +0 -0
  38. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/config/files/liberty.ini +0 -0
  39. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/controllers/__init__.py +0 -0
  40. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/controllers/__pycache__/__init__.cpython-312.pyc +0 -0
  41. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/controllers/__pycache__/api_controller.cpython-312.pyc +0 -0
  42. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/controllers/__pycache__/react_controller.cpython-312.pyc +0 -0
  43. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/controllers/__pycache__/setup_controller.cpython-312.pyc +0 -0
  44. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/controllers/__pycache__/socket_controller.cpython-312.pyc +0 -0
  45. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/controllers/api_controller.py +0 -0
  46. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/controllers/setup_controller.py +0 -0
  47. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/controllers/socket_controller.py +0 -0
  48. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/database/__init__.py +0 -0
  49. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/database/__pycache__/__init__.cpython-312.pyc +0 -0
  50. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/database/__pycache__/base_dao.cpython-312.pyc +0 -0
  51. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/database/__pycache__/config.cpython-312.pyc +0 -0
  52. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/database/__pycache__/dao_factory.cpython-312.pyc +0 -0
  53. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/database/__pycache__/ora_dao.cpython-312.pyc +0 -0
  54. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/database/__pycache__/oracle_dao.cpython-312.pyc +0 -0
  55. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/database/__pycache__/pg_dao.cpython-312.pyc +0 -0
  56. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/database/__pycache__/postgres_dao.cpython-312.pyc +0 -0
  57. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/database/base_dao.py +0 -0
  58. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/database/ora_dao.py +0 -0
  59. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/database/pg_dao.py +0 -0
  60. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/logs/.DS_Store +0 -0
  61. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/logs/__init__.py +0 -0
  62. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/logs/__pycache__/__init__.cpython-312.pyc +0 -0
  63. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/logs/__pycache__/logs.cpython-312.pyc +0 -0
  64. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/logs/files/logs-frontend-json.log +0 -0
  65. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/logs/files/logs-frontend-text.log +0 -0
  66. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/main.py +0 -0
  67. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/models/__init__.py +0 -0
  68. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/models/__pycache__/__init__.cpython-312.pyc +0 -0
  69. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/models/__pycache__/ai.cpython-312.pyc +0 -0
  70. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/models/__pycache__/apidb.cpython-312.pyc +0 -0
  71. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/models/__pycache__/applications.cpython-312.pyc +0 -0
  72. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/models/__pycache__/auth.cpython-312.pyc +0 -0
  73. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/models/__pycache__/base.cpython-312.pyc +0 -0
  74. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/models/__pycache__/checkdb.cpython-312.pyc +0 -0
  75. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/models/__pycache__/modules.cpython-312.pyc +0 -0
  76. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/models/__pycache__/pool.cpython-312.pyc +0 -0
  77. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/models/__pycache__/setup.cpython-312.pyc +0 -0
  78. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/models/__pycache__/themes.cpython-312.pyc +0 -0
  79. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/models/ai.py +0 -0
  80. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/models/apidb.py +0 -0
  81. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/models/applications.py +0 -0
  82. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/models/auth.py +0 -0
  83. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/models/base.py +0 -0
  84. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/models/modules.py +0 -0
  85. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/models/pool.py +0 -0
  86. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/models/setup.py +0 -0
  87. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/models/themes.py +0 -0
  88. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/postgres/.DS_Store +0 -0
  89. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/postgres/__init__.py +0 -0
  90. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/postgres/__pycache__/__init__.cpython-312.pyc +0 -0
  91. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/postgres/dump/__init__.py +0 -0
  92. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/postgres/dump/__pycache__/__init__.cpython-312.pyc +0 -0
  93. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/postgres/dump/__pycache__/dump.cpython-312.pyc +0 -0
  94. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/postgres/dump/airflow.dump +0 -0
  95. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/postgres/dump/gitea.dump +0 -0
  96. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/postgres/dump/keycloak.dump +0 -0
  97. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/postgres/dump/liberty.dump +0 -0
  98. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/postgres/dump/libnetl.dump +0 -0
  99. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/postgres/dump/libnjde.dump +0 -0
  100. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/postgres/dump/libnsx1.dump +0 -0
  101. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/postgres/dump/nomajde.dump +0 -0
  102. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/postgres/dump/nomasx1.dump +0 -0
  103. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/public/__init__.py +0 -0
  104. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/public/__pycache__/__init__.cpython-312.pyc +0 -0
  105. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/public/frontend/assets/background_ly-VdfFMP8a.jpg +0 -0
  106. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/public/frontend/assets/index-CBVjFKmW.js +0 -0
  107. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/public/frontend/assets/index-CBVjFKmW.js.map +0 -0
  108. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/public/frontend/assets/index.es-8R5QRthQ-drU8K1aL.js +0 -0
  109. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/public/frontend/assets/index.es-8R5QRthQ-drU8K1aL.js.map +0 -0
  110. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/public/frontend/assets/logo_ly-HGj2PB94.svg +0 -0
  111. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/public/frontend/assets/purify.es-CKk_t3XZ-CHJWMLL4.js +0 -0
  112. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/public/frontend/assets/purify.es-CKk_t3XZ-CHJWMLL4.js.map +0 -0
  113. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/public/frontend/index.html +0 -0
  114. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/public/offline/assets/logo_ly.png +0 -0
  115. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/public/offline/offline.html +0 -0
  116. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/public/setup/index.html +0 -0
  117. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/public/setup/setup/assets/background_ly-VdfFMP8a.jpg +0 -0
  118. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/public/setup/setup/assets/index-BBGAGXd2.css +0 -0
  119. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/public/setup/setup/assets/index-BnpY-7P6.js +0 -0
  120. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/public/setup/setup/assets/index-BnpY-7P6.js.map +0 -0
  121. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/public/setup/setup/assets/logo_ly-HGj2PB94.svg +0 -0
  122. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/routes/__init__.py +0 -0
  123. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/routes/__pycache__/__init__.cpython-312.pyc +0 -0
  124. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/routes/__pycache__/api_routes.cpython-312.pyc +0 -0
  125. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/routes/__pycache__/react_routes.cpython-312.pyc +0 -0
  126. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/routes/__pycache__/setup_routes.cpython-312.pyc +0 -0
  127. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/routes/__pycache__/socket_routes.cpython-312.pyc +0 -0
  128. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/routes/api_routes.py +0 -0
  129. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/routes/react_routes.py +0 -0
  130. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/routes/setup_routes.py +0 -0
  131. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/routes/socket_routes.py +0 -0
  132. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/services/__init__.py +0 -0
  133. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/services/__pycache__/__init__.cpython-312.pyc +0 -0
  134. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/services/__pycache__/alembic.cpython-312.pyc +0 -0
  135. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/services/__pycache__/api_rest.cpython-312.pyc +0 -0
  136. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/services/__pycache__/db_pool.cpython-312.pyc +0 -0
  137. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/services/__pycache__/db_query.cpython-312.pyc +0 -0
  138. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/services/api_rest.py +0 -0
  139. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/services/db_pool.py +0 -0
  140. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/services/db_query.py +0 -0
  141. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/__init__.py +0 -0
  142. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/__pycache__/__init__.cpython-312.pyc +0 -0
  143. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/data/__init__.py +0 -0
  144. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/data/__pycache__/__init__.cpython-312.pyc +0 -0
  145. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/data/__pycache__/data.cpython-312.pyc +0 -0
  146. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/data/liberty.json +0 -0
  147. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/data/libnetl.json +0 -0
  148. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/data/libnjde.json +0 -0
  149. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/data/libnsx1.json +0 -0
  150. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/data/nomasx1.json +0 -0
  151. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/models/__init__.py +0 -0
  152. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/models/__pycache__/__init__.cpython-312.pyc +0 -0
  153. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/models/__pycache__/airflow.cpython-312.pyc +0 -0
  154. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/models/__pycache__/liberty.cpython-312.pyc +0 -0
  155. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/models/__pycache__/libnetl.cpython-312.pyc +0 -0
  156. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/models/__pycache__/libnjde.cpython-312.pyc +0 -0
  157. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/models/__pycache__/libnsx1.cpython-312.pyc +0 -0
  158. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/models/__pycache__/models.cpython-312.pyc +0 -0
  159. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/models/__pycache__/nomasx1.cpython-312.pyc +0 -0
  160. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/models/liberty.py +0 -0
  161. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/models/nomasx1.py +0 -0
  162. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/services/__init__.py +0 -0
  163. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/services/__pycache__/__init__.cpython-312.pyc +0 -0
  164. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/services/__pycache__/alembic.cpython-312.pyc +0 -0
  165. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/services/__pycache__/dump.cpython-312.pyc +0 -0
  166. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/services/__pycache__/init.cpython-312.pyc +0 -0
  167. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/services/__pycache__/install.cpython-312.pyc +0 -0
  168. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/services/__pycache__/models.cpython-312.pyc +0 -0
  169. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/services/__pycache__/setup.cpython-312.pyc +0 -0
  170. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/services/alembic.py +0 -0
  171. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/services/dump.py +0 -0
  172. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/services/install.py +0 -0
  173. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/services/models.py +0 -0
  174. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/setup/services/setup.py +0 -0
  175. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/utils/__init__.py +0 -0
  176. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/utils/__pycache__/__init__.cpython-312.pyc +0 -0
  177. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/utils/__pycache__/common.cpython-312.pyc +0 -0
  178. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/utils/__pycache__/encrypt.cpython-312.pyc +0 -0
  179. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/utils/__pycache__/jwt.cpython-312.pyc +0 -0
  180. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/utils/__pycache__/logs.cpython-312.pyc +0 -0
  181. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/utils/__pycache__/models.cpython-312.pyc +0 -0
  182. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/utils/common.py +0 -0
  183. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/utils/encrypt.py +0 -0
  184. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/utils/jwt.py +0 -0
  185. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/utils/logs.py +0 -0
  186. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/app/utils/test.py +0 -0
  187. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/liberty_framework.egg-info/SOURCES.txt +0 -0
  188. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/liberty_framework.egg-info/dependency_links.txt +0 -0
  189. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/liberty_framework.egg-info/entry_points.txt +0 -0
  190. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/liberty_framework.egg-info/requires.txt +0 -0
  191. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/liberty_framework.egg-info/top_level.txt +0 -0
  192. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/pyproject.toml +0 -0
  193. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/requirements.txt +0 -0
  194. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/setup.cfg +0 -0
  195. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/__init__.py +0 -0
  196. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/__pycache__/__init__.cpython-312.pyc +0 -0
  197. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/__pycache__/conftest.cpython-312-pytest-8.3.4.pyc +0 -0
  198. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/__pycache__/main.cpython-312.pyc +0 -0
  199. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/__pycache__/test.cpython-312.pyc +0 -0
  200. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/conftest.py +0 -0
  201. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/main.py +0 -0
  202. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/scenarios/__init__.py +0 -0
  203. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/scenarios/__pycache__/__init__.cpython-312.pyc +0 -0
  204. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/scenarios/__pycache__/test_auth_token.cpython-312-pytest-8.3.4.pyc +0 -0
  205. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/scenarios/__pycache__/test_auth_user.cpython-312-pytest-8.3.4.pyc +0 -0
  206. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/scenarios/__pycache__/test_db_check.cpython-312-pytest-8.3.4.pyc +0 -0
  207. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/scenarios/__pycache__/test_db_close.cpython-312-pytest-8.3.4.pyc +0 -0
  208. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/scenarios/__pycache__/test_db_open.cpython-312-pytest-8.3.4.pyc +0 -0
  209. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/scenarios/__pycache__/test_fmw_applications.cpython-312-pytest-8.3.4.pyc +0 -0
  210. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/scenarios/__pycache__/test_fmw_encrypt.cpython-312-pytest-8.3.4.pyc +0 -0
  211. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/scenarios/__pycache__/test_fmw_modules.cpython-312-pytest-8.3.4.pyc +0 -0
  212. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/scenarios/__pycache__/test_fmw_themes.cpython-312-pytest-8.3.4.pyc +0 -0
  213. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/scenarios/test_auth_token.py +0 -0
  214. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/scenarios/test_auth_user.py +0 -0
  215. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/scenarios/test_db_check.py +0 -0
  216. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/scenarios/test_db_close.py +0 -0
  217. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/scenarios/test_db_open.py +0 -0
  218. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/scenarios/test_fmw_applications.py +0 -0
  219. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/scenarios/test_fmw_encrypt.py +0 -0
  220. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/scenarios/test_fmw_modules.py +0 -0
  221. {liberty_framework-6.0.44 → liberty_framework-6.0.45}/tests/scenarios/test_fmw_themes.py +0 -0
@@ -1,5 +1,6 @@
1
1
  include requirements.txt
2
2
  include LICENSE
3
+ include README.md
3
4
  recursive-include app *
4
5
  recursive-include tests *
5
6
  exclude app/config/files/db.properties
@@ -0,0 +1,221 @@
1
+ Metadata-Version: 2.2
2
+ Name: liberty-framework
3
+ Version: 6.0.45
4
+ Summary: Liberty Framework
5
+ Author: Franck Blettner
6
+ Author-email: franck.blettner@nomana-it.fr
7
+ Classifier: Programming Language :: Python :: 3
8
+ Classifier: Framework :: FastAPI
9
+ Classifier: Operating System :: OS Independent
10
+ Requires-Python: >=3.8
11
+ Description-Content-Type: text/markdown
12
+ License-File: LICENSE
13
+ Requires-Dist: alembic==1.14.1
14
+ Requires-Dist: allure-pytest==2.13.5
15
+ Requires-Dist: allure-python-commons==2.13.5
16
+ Requires-Dist: annotated-types==0.7.0
17
+ Requires-Dist: anyio==4.8.0
18
+ Requires-Dist: asyncpg==0.30.0
19
+ Requires-Dist: attrs==25.1.0
20
+ Requires-Dist: bidict==0.23.1
21
+ Requires-Dist: certifi==2024.12.14
22
+ Requires-Dist: cffi==1.17.1
23
+ Requires-Dist: click==8.1.8
24
+ Requires-Dist: cryptography==44.0.0
25
+ Requires-Dist: dnspython==2.7.0
26
+ Requires-Dist: email_validator==2.2.0
27
+ Requires-Dist: fastapi==0.115.7
28
+ Requires-Dist: fastapi-cli==0.0.7
29
+ Requires-Dist: fastapi-socketio==0.0.10
30
+ Requires-Dist: greenlet==3.1.1
31
+ Requires-Dist: h11==0.14.0
32
+ Requires-Dist: httpcore==1.0.7
33
+ Requires-Dist: httptools==0.6.4
34
+ Requires-Dist: httpx==0.28.1
35
+ Requires-Dist: idna==3.10
36
+ Requires-Dist: inflect==7.5.0
37
+ Requires-Dist: iniconfig==2.0.0
38
+ Requires-Dist: Jinja2==3.1.5
39
+ Requires-Dist: Mako==1.3.8
40
+ Requires-Dist: markdown-it-py==3.0.0
41
+ Requires-Dist: MarkupSafe==3.0.2
42
+ Requires-Dist: mdurl==0.1.2
43
+ Requires-Dist: more-itertools==10.6.0
44
+ Requires-Dist: oracledb==2.4.1
45
+ Requires-Dist: packaging==24.2
46
+ Requires-Dist: pluggy==1.5.0
47
+ Requires-Dist: psycopg2-binary==2.9.10
48
+ Requires-Dist: pycparser==2.22
49
+ Requires-Dist: pydantic==2.10.6
50
+ Requires-Dist: pydantic_core==2.27.2
51
+ Requires-Dist: Pygments==2.19.1
52
+ Requires-Dist: PyJWT==2.10.1
53
+ Requires-Dist: pytest==8.3.4
54
+ Requires-Dist: python-dotenv==1.0.1
55
+ Requires-Dist: python-engineio==4.11.2
56
+ Requires-Dist: python-multipart==0.0.20
57
+ Requires-Dist: python-socketio==5.12.1
58
+ Requires-Dist: PyYAML==6.0.2
59
+ Requires-Dist: rich==13.9.4
60
+ Requires-Dist: rich-toolkit==0.13.2
61
+ Requires-Dist: setuptools==75.8.0
62
+ Requires-Dist: shellingham==1.5.4
63
+ Requires-Dist: simple-websocket==1.1.0
64
+ Requires-Dist: sniffio==1.3.1
65
+ Requires-Dist: SQLAlchemy==2.0.37
66
+ Requires-Dist: starlette==0.45.3
67
+ Requires-Dist: typeguard==4.4.1
68
+ Requires-Dist: typer==0.15.1
69
+ Requires-Dist: typing_extensions==4.12.2
70
+ Requires-Dist: uvicorn==0.34.0
71
+ Requires-Dist: uvloop==0.21.0
72
+ Requires-Dist: watchfiles==1.0.4
73
+ Requires-Dist: websockets==14.2
74
+ Requires-Dist: wsproto==1.2.0
75
+ Dynamic: author
76
+ Dynamic: author-email
77
+ Dynamic: classifier
78
+ Dynamic: description
79
+ Dynamic: description-content-type
80
+ Dynamic: requires-dist
81
+ Dynamic: requires-python
82
+ Dynamic: summary
83
+
84
+ # 📖 Liberty Framework
85
+ ### A Scalable and Extensible FastAPI and React Framework for Business Applications
86
+
87
+ 🚀 **Liberty Framework** is a powerful, modular, and extensible **FastAPI-based and React-based framework** designed to streamline backend development for business applications. It provides **database management, authentication, real-time socket communication, and more**, making it easy to deploy and scale enterprise solutions.
88
+
89
+ - Online demo is available at [https://liberty.nomana-it.fr](https://liberty.nomana-it.fr)
90
+ - Web page at: [https://nomana-it.fr](https://nomana-it.fr)
91
+
92
+ ```ini
93
+ Login = demo
94
+ Password = demo
95
+ Appplication = LIBERTY, NOMASX-1 and NOMAJDE
96
+ ```
97
+
98
+ ![liberty](https://github.com/user-attachments/assets/74479874-d7ba-469a-b525-b468529c4432)
99
+
100
+ ---
101
+
102
+ ## ✨ Features
103
+ ✅ **FastAPI-based** – High-performance backend with asynchronous capabilities.
104
+ ✅ **React-based** – Beautiful and responsive frontend without any dependencies to components.
105
+ ✅ **Database Management** – SQLAlchemy, Alembic for migrations, and PostgreSQL support.
106
+ ✅ **Real-Time Communication** – Integrated WebSocket (Socket.IO) for live updates.
107
+ ✅ **Authentication & Security** – JWT authentication, encryption, and role-based access.
108
+ ✅ **Automated Database Migrations** – Alembic versioning for multiple databases.
109
+ ✅ **Easy Installation & Deployment** – Available as a **Python package** and **Docker image**.
110
+ ✅ **Extensible** – Plugin-based architecture to support future enhancements.
111
+
112
+ ## ✨ Enterprise additional features
113
+ - 🌐 **Traefik**: A powerful reverse proxy for routing and load balancing.
114
+ - ⚙️ **AirFlow**: Automate and manage workflows effortlessly.
115
+ - 🐘 **pgAdmin**: Manage your PostgreSQL database visually with ease.
116
+ - 🔐 **KeyCloak**: OIDC Service for authentication
117
+ - 📂 **Gitea**: Git Repository to manage dags, plugins, backup
118
+
119
+ ---
120
+
121
+ ## 📦 Installation
122
+
123
+ ### Requirements
124
+ A PostgreSQL 16 database is required. You can either:
125
+ - Create a Docker image based on postgres:16, or
126
+ - Install PostgreSQL 16 directly on your host system.
127
+
128
+ For easier setup and to ensure compatibility with future enterprise features, it is recommended to create a database with a user named liberty.
129
+
130
+ ### **Option 1: Install via `pip`**
131
+ ```bash
132
+ pip install liberty-framework
133
+ ```
134
+
135
+
136
+ ---
137
+
138
+ ## 🚀 Quick Start
139
+ After installation, you can **start the framework** with:
140
+ ```bash
141
+ liberty-start
142
+ ```
143
+
144
+ ---
145
+
146
+ ## ⚙️ URL
147
+
148
+ ### Installation URL
149
+ - Setup: `http://<your_host>:<your_port>/setup`
150
+ - Application: `http://<your_host>:<your_port>`
151
+ - API Documentation: `http://<your_host>:<your_port>/api`
152
+ - Swagger: `http://<your_host>:<your_port>/api/test`
153
+
154
+ ### Demo URL
155
+ - Setup: [https://liberty.nomana-it.fr/setup](https://liberty.nomana-it.fr/setup)
156
+ - Application: [https://liberty.nomana-it.fr](https://liberty.nomana-it.fr)
157
+ - API Documentation: [https://liberty.nomana-it.fr/api](https://liberty.nomana-it.fr/api)
158
+ - Swagger: [https://liberty.nomana-it.fr/api/test](https://liberty.nomana-it.fr/api/test)
159
+
160
+ ---
161
+
162
+ ## 📖 Documentation
163
+ - **Reference**: [https://docs.nomana-it.fr/liberty](https://docs.nomana-it.fr/liberty)
164
+
165
+ ---
166
+
167
+ ## 🤝 Contributing
168
+ We welcome contributions! Here’s how you can help:
169
+ 1. **Fork** this repository.
170
+ 2. **Clone** your fork:
171
+ ```bash
172
+ git clone https://github.com/fblettner/liberty-framework.git
173
+ ```
174
+ 3. **Create a new branch** for your feature:
175
+ ```bash
176
+ git checkout -b feature-name
177
+ ```
178
+ 4. **Commit your changes**:
179
+ ```bash
180
+ git commit -m "Add new feature"
181
+ ```
182
+ 5. **Push to your fork** and **submit a Pull Request**:
183
+ ```bash
184
+ git push origin feature-name
185
+ ```
186
+ 6. **Join discussions** and help improve the framework!
187
+
188
+ ---
189
+
190
+ ## 💖 Sponsorship
191
+ If you find **Liberty Framework** useful and would like to support its development, consider sponsoring us. Your contributions help maintain the project, add new features, and improve the documentation. Every contribution, big or small, is greatly appreciated!
192
+
193
+ To sponsor, visit: **[GitHub Sponsors](https://github.com/sponsors/fblettner)** or reach out to us directly.
194
+
195
+ ---
196
+
197
+ ## 📜 License
198
+ Liberty Framework is **open-source software** licensed under the **AGPL License**.
199
+ Enterprise features require a license:
200
+ - **NOMASX-1**: Security management, Segregation of duties and licenses compliancy
201
+ - **NOMAJDE** JD-Edwards integration
202
+ - **Airflow Plugins**: Automatic database backup, database synchronisation...
203
+ - **Liberty AI**: Currently, OpenAI is set into the configuration, you have to use your own account without enterprise features license
204
+
205
+ ---
206
+
207
+ ## 📧 Contact & Support
208
+ If you have questions or need support:
209
+ - **Email**: [franck.blettner@nomana-it.fr](mailto:franck.blettner@nomana-it.fr)
210
+ - **GitHub Issues**: [Report an issue](https://github.com/fblettner/liberty-framework/issues)
211
+ - **Discussions**: Join the conversation in the **GitHub Discussions** section.
212
+
213
+ ---
214
+
215
+ ### ⭐ If you find Liberty Framework useful, consider giving it a star on GitHub!
216
+ ```bash
217
+ git clone https://github.com/fblettner/liberty-framework.git
218
+ cd liberty-framework
219
+ ```
220
+
221
+ 🚀 **Let's build the future of business applications together!** 🚀
@@ -0,0 +1,221 @@
1
+ Metadata-Version: 2.2
2
+ Name: liberty-framework
3
+ Version: 6.0.45
4
+ Summary: Liberty Framework
5
+ Author: Franck Blettner
6
+ Author-email: franck.blettner@nomana-it.fr
7
+ Classifier: Programming Language :: Python :: 3
8
+ Classifier: Framework :: FastAPI
9
+ Classifier: Operating System :: OS Independent
10
+ Requires-Python: >=3.8
11
+ Description-Content-Type: text/markdown
12
+ License-File: LICENSE
13
+ Requires-Dist: alembic==1.14.1
14
+ Requires-Dist: allure-pytest==2.13.5
15
+ Requires-Dist: allure-python-commons==2.13.5
16
+ Requires-Dist: annotated-types==0.7.0
17
+ Requires-Dist: anyio==4.8.0
18
+ Requires-Dist: asyncpg==0.30.0
19
+ Requires-Dist: attrs==25.1.0
20
+ Requires-Dist: bidict==0.23.1
21
+ Requires-Dist: certifi==2024.12.14
22
+ Requires-Dist: cffi==1.17.1
23
+ Requires-Dist: click==8.1.8
24
+ Requires-Dist: cryptography==44.0.0
25
+ Requires-Dist: dnspython==2.7.0
26
+ Requires-Dist: email_validator==2.2.0
27
+ Requires-Dist: fastapi==0.115.7
28
+ Requires-Dist: fastapi-cli==0.0.7
29
+ Requires-Dist: fastapi-socketio==0.0.10
30
+ Requires-Dist: greenlet==3.1.1
31
+ Requires-Dist: h11==0.14.0
32
+ Requires-Dist: httpcore==1.0.7
33
+ Requires-Dist: httptools==0.6.4
34
+ Requires-Dist: httpx==0.28.1
35
+ Requires-Dist: idna==3.10
36
+ Requires-Dist: inflect==7.5.0
37
+ Requires-Dist: iniconfig==2.0.0
38
+ Requires-Dist: Jinja2==3.1.5
39
+ Requires-Dist: Mako==1.3.8
40
+ Requires-Dist: markdown-it-py==3.0.0
41
+ Requires-Dist: MarkupSafe==3.0.2
42
+ Requires-Dist: mdurl==0.1.2
43
+ Requires-Dist: more-itertools==10.6.0
44
+ Requires-Dist: oracledb==2.4.1
45
+ Requires-Dist: packaging==24.2
46
+ Requires-Dist: pluggy==1.5.0
47
+ Requires-Dist: psycopg2-binary==2.9.10
48
+ Requires-Dist: pycparser==2.22
49
+ Requires-Dist: pydantic==2.10.6
50
+ Requires-Dist: pydantic_core==2.27.2
51
+ Requires-Dist: Pygments==2.19.1
52
+ Requires-Dist: PyJWT==2.10.1
53
+ Requires-Dist: pytest==8.3.4
54
+ Requires-Dist: python-dotenv==1.0.1
55
+ Requires-Dist: python-engineio==4.11.2
56
+ Requires-Dist: python-multipart==0.0.20
57
+ Requires-Dist: python-socketio==5.12.1
58
+ Requires-Dist: PyYAML==6.0.2
59
+ Requires-Dist: rich==13.9.4
60
+ Requires-Dist: rich-toolkit==0.13.2
61
+ Requires-Dist: setuptools==75.8.0
62
+ Requires-Dist: shellingham==1.5.4
63
+ Requires-Dist: simple-websocket==1.1.0
64
+ Requires-Dist: sniffio==1.3.1
65
+ Requires-Dist: SQLAlchemy==2.0.37
66
+ Requires-Dist: starlette==0.45.3
67
+ Requires-Dist: typeguard==4.4.1
68
+ Requires-Dist: typer==0.15.1
69
+ Requires-Dist: typing_extensions==4.12.2
70
+ Requires-Dist: uvicorn==0.34.0
71
+ Requires-Dist: uvloop==0.21.0
72
+ Requires-Dist: watchfiles==1.0.4
73
+ Requires-Dist: websockets==14.2
74
+ Requires-Dist: wsproto==1.2.0
75
+ Dynamic: author
76
+ Dynamic: author-email
77
+ Dynamic: classifier
78
+ Dynamic: description
79
+ Dynamic: description-content-type
80
+ Dynamic: requires-dist
81
+ Dynamic: requires-python
82
+ Dynamic: summary
83
+
84
+ # 📖 Liberty Framework
85
+ ### A Scalable and Extensible FastAPI and React Framework for Business Applications
86
+
87
+ 🚀 **Liberty Framework** is a powerful, modular, and extensible **FastAPI-based and React-based framework** designed to streamline backend development for business applications. It provides **database management, authentication, real-time socket communication, and more**, making it easy to deploy and scale enterprise solutions.
88
+
89
+ - Online demo is available at [https://liberty.nomana-it.fr](https://liberty.nomana-it.fr)
90
+ - Web page at: [https://nomana-it.fr](https://nomana-it.fr)
91
+
92
+ ```ini
93
+ Login = demo
94
+ Password = demo
95
+ Appplication = LIBERTY, NOMASX-1 and NOMAJDE
96
+ ```
97
+
98
+ ![liberty](https://github.com/user-attachments/assets/74479874-d7ba-469a-b525-b468529c4432)
99
+
100
+ ---
101
+
102
+ ## ✨ Features
103
+ ✅ **FastAPI-based** – High-performance backend with asynchronous capabilities.
104
+ ✅ **React-based** – Beautiful and responsive frontend without any dependencies to components.
105
+ ✅ **Database Management** – SQLAlchemy, Alembic for migrations, and PostgreSQL support.
106
+ ✅ **Real-Time Communication** – Integrated WebSocket (Socket.IO) for live updates.
107
+ ✅ **Authentication & Security** – JWT authentication, encryption, and role-based access.
108
+ ✅ **Automated Database Migrations** – Alembic versioning for multiple databases.
109
+ ✅ **Easy Installation & Deployment** – Available as a **Python package** and **Docker image**.
110
+ ✅ **Extensible** – Plugin-based architecture to support future enhancements.
111
+
112
+ ## ✨ Enterprise additional features
113
+ - 🌐 **Traefik**: A powerful reverse proxy for routing and load balancing.
114
+ - ⚙️ **AirFlow**: Automate and manage workflows effortlessly.
115
+ - 🐘 **pgAdmin**: Manage your PostgreSQL database visually with ease.
116
+ - 🔐 **KeyCloak**: OIDC Service for authentication
117
+ - 📂 **Gitea**: Git Repository to manage dags, plugins, backup
118
+
119
+ ---
120
+
121
+ ## 📦 Installation
122
+
123
+ ### Requirements
124
+ A PostgreSQL 16 database is required. You can either:
125
+ - Create a Docker image based on postgres:16, or
126
+ - Install PostgreSQL 16 directly on your host system.
127
+
128
+ For easier setup and to ensure compatibility with future enterprise features, it is recommended to create a database with a user named liberty.
129
+
130
+ ### **Option 1: Install via `pip`**
131
+ ```bash
132
+ pip install liberty-framework
133
+ ```
134
+
135
+
136
+ ---
137
+
138
+ ## 🚀 Quick Start
139
+ After installation, you can **start the framework** with:
140
+ ```bash
141
+ liberty-start
142
+ ```
143
+
144
+ ---
145
+
146
+ ## ⚙️ URL
147
+
148
+ ### Installation URL
149
+ - Setup: `http://<your_host>:<your_port>/setup`
150
+ - Application: `http://<your_host>:<your_port>`
151
+ - API Documentation: `http://<your_host>:<your_port>/api`
152
+ - Swagger: `http://<your_host>:<your_port>/api/test`
153
+
154
+ ### Demo URL
155
+ - Setup: [https://liberty.nomana-it.fr/setup](https://liberty.nomana-it.fr/setup)
156
+ - Application: [https://liberty.nomana-it.fr](https://liberty.nomana-it.fr)
157
+ - API Documentation: [https://liberty.nomana-it.fr/api](https://liberty.nomana-it.fr/api)
158
+ - Swagger: [https://liberty.nomana-it.fr/api/test](https://liberty.nomana-it.fr/api/test)
159
+
160
+ ---
161
+
162
+ ## 📖 Documentation
163
+ - **Reference**: [https://docs.nomana-it.fr/liberty](https://docs.nomana-it.fr/liberty)
164
+
165
+ ---
166
+
167
+ ## 🤝 Contributing
168
+ We welcome contributions! Here’s how you can help:
169
+ 1. **Fork** this repository.
170
+ 2. **Clone** your fork:
171
+ ```bash
172
+ git clone https://github.com/fblettner/liberty-framework.git
173
+ ```
174
+ 3. **Create a new branch** for your feature:
175
+ ```bash
176
+ git checkout -b feature-name
177
+ ```
178
+ 4. **Commit your changes**:
179
+ ```bash
180
+ git commit -m "Add new feature"
181
+ ```
182
+ 5. **Push to your fork** and **submit a Pull Request**:
183
+ ```bash
184
+ git push origin feature-name
185
+ ```
186
+ 6. **Join discussions** and help improve the framework!
187
+
188
+ ---
189
+
190
+ ## 💖 Sponsorship
191
+ If you find **Liberty Framework** useful and would like to support its development, consider sponsoring us. Your contributions help maintain the project, add new features, and improve the documentation. Every contribution, big or small, is greatly appreciated!
192
+
193
+ To sponsor, visit: **[GitHub Sponsors](https://github.com/sponsors/fblettner)** or reach out to us directly.
194
+
195
+ ---
196
+
197
+ ## 📜 License
198
+ Liberty Framework is **open-source software** licensed under the **AGPL License**.
199
+ Enterprise features require a license:
200
+ - **NOMASX-1**: Security management, Segregation of duties and licenses compliancy
201
+ - **NOMAJDE** JD-Edwards integration
202
+ - **Airflow Plugins**: Automatic database backup, database synchronisation...
203
+ - **Liberty AI**: Currently, OpenAI is set into the configuration, you have to use your own account without enterprise features license
204
+
205
+ ---
206
+
207
+ ## 📧 Contact & Support
208
+ If you have questions or need support:
209
+ - **Email**: [franck.blettner@nomana-it.fr](mailto:franck.blettner@nomana-it.fr)
210
+ - **GitHub Issues**: [Report an issue](https://github.com/fblettner/liberty-framework/issues)
211
+ - **Discussions**: Join the conversation in the **GitHub Discussions** section.
212
+
213
+ ---
214
+
215
+ ### ⭐ If you find Liberty Framework useful, consider giving it a star on GitHub!
216
+ ```bash
217
+ git clone https://github.com/fblettner/liberty-framework.git
218
+ cd liberty-framework
219
+ ```
220
+
221
+ 🚀 **Let's build the future of business applications together!** 🚀
@@ -10,13 +10,20 @@ def read_requirements():
10
10
  req_file = BASE_DIR / "requirements.txt"
11
11
  return req_file.read_text().splitlines() if req_file.exists() else []
12
12
 
13
+
14
+ def read_readme():
15
+ readme_file = BASE_DIR / "README.md"
16
+ return readme_file.read_text(encoding="utf-8") if readme_file.exists() else ""
17
+
13
18
  setup(
14
19
  name="liberty-framework",
15
- version="6.0.44",
20
+ version="6.0.45",
16
21
  description="Liberty Framework",
17
22
  author="Franck Blettner",
18
23
  author_email="franck.blettner@nomana-it.fr",
19
24
  packages=find_packages(),
25
+ long_description=read_readme(),
26
+ long_description_content_type="text/markdown",
20
27
  include_package_data=True,
21
28
  install_requires=read_requirements(),
22
29
  entry_points={
@@ -1,79 +0,0 @@
1
- Metadata-Version: 2.2
2
- Name: liberty-framework
3
- Version: 6.0.44
4
- Summary: Liberty Framework
5
- Author: Franck Blettner
6
- Author-email: franck.blettner@nomana-it.fr
7
- Classifier: Programming Language :: Python :: 3
8
- Classifier: Framework :: FastAPI
9
- Classifier: Operating System :: OS Independent
10
- Requires-Python: >=3.8
11
- License-File: LICENSE
12
- Requires-Dist: alembic==1.14.1
13
- Requires-Dist: allure-pytest==2.13.5
14
- Requires-Dist: allure-python-commons==2.13.5
15
- Requires-Dist: annotated-types==0.7.0
16
- Requires-Dist: anyio==4.8.0
17
- Requires-Dist: asyncpg==0.30.0
18
- Requires-Dist: attrs==25.1.0
19
- Requires-Dist: bidict==0.23.1
20
- Requires-Dist: certifi==2024.12.14
21
- Requires-Dist: cffi==1.17.1
22
- Requires-Dist: click==8.1.8
23
- Requires-Dist: cryptography==44.0.0
24
- Requires-Dist: dnspython==2.7.0
25
- Requires-Dist: email_validator==2.2.0
26
- Requires-Dist: fastapi==0.115.7
27
- Requires-Dist: fastapi-cli==0.0.7
28
- Requires-Dist: fastapi-socketio==0.0.10
29
- Requires-Dist: greenlet==3.1.1
30
- Requires-Dist: h11==0.14.0
31
- Requires-Dist: httpcore==1.0.7
32
- Requires-Dist: httptools==0.6.4
33
- Requires-Dist: httpx==0.28.1
34
- Requires-Dist: idna==3.10
35
- Requires-Dist: inflect==7.5.0
36
- Requires-Dist: iniconfig==2.0.0
37
- Requires-Dist: Jinja2==3.1.5
38
- Requires-Dist: Mako==1.3.8
39
- Requires-Dist: markdown-it-py==3.0.0
40
- Requires-Dist: MarkupSafe==3.0.2
41
- Requires-Dist: mdurl==0.1.2
42
- Requires-Dist: more-itertools==10.6.0
43
- Requires-Dist: oracledb==2.4.1
44
- Requires-Dist: packaging==24.2
45
- Requires-Dist: pluggy==1.5.0
46
- Requires-Dist: psycopg2-binary==2.9.10
47
- Requires-Dist: pycparser==2.22
48
- Requires-Dist: pydantic==2.10.6
49
- Requires-Dist: pydantic_core==2.27.2
50
- Requires-Dist: Pygments==2.19.1
51
- Requires-Dist: PyJWT==2.10.1
52
- Requires-Dist: pytest==8.3.4
53
- Requires-Dist: python-dotenv==1.0.1
54
- Requires-Dist: python-engineio==4.11.2
55
- Requires-Dist: python-multipart==0.0.20
56
- Requires-Dist: python-socketio==5.12.1
57
- Requires-Dist: PyYAML==6.0.2
58
- Requires-Dist: rich==13.9.4
59
- Requires-Dist: rich-toolkit==0.13.2
60
- Requires-Dist: setuptools==75.8.0
61
- Requires-Dist: shellingham==1.5.4
62
- Requires-Dist: simple-websocket==1.1.0
63
- Requires-Dist: sniffio==1.3.1
64
- Requires-Dist: SQLAlchemy==2.0.37
65
- Requires-Dist: starlette==0.45.3
66
- Requires-Dist: typeguard==4.4.1
67
- Requires-Dist: typer==0.15.1
68
- Requires-Dist: typing_extensions==4.12.2
69
- Requires-Dist: uvicorn==0.34.0
70
- Requires-Dist: uvloop==0.21.0
71
- Requires-Dist: watchfiles==1.0.4
72
- Requires-Dist: websockets==14.2
73
- Requires-Dist: wsproto==1.2.0
74
- Dynamic: author
75
- Dynamic: author-email
76
- Dynamic: classifier
77
- Dynamic: requires-dist
78
- Dynamic: requires-python
79
- Dynamic: summary
@@ -1,79 +0,0 @@
1
- Metadata-Version: 2.2
2
- Name: liberty-framework
3
- Version: 6.0.44
4
- Summary: Liberty Framework
5
- Author: Franck Blettner
6
- Author-email: franck.blettner@nomana-it.fr
7
- Classifier: Programming Language :: Python :: 3
8
- Classifier: Framework :: FastAPI
9
- Classifier: Operating System :: OS Independent
10
- Requires-Python: >=3.8
11
- License-File: LICENSE
12
- Requires-Dist: alembic==1.14.1
13
- Requires-Dist: allure-pytest==2.13.5
14
- Requires-Dist: allure-python-commons==2.13.5
15
- Requires-Dist: annotated-types==0.7.0
16
- Requires-Dist: anyio==4.8.0
17
- Requires-Dist: asyncpg==0.30.0
18
- Requires-Dist: attrs==25.1.0
19
- Requires-Dist: bidict==0.23.1
20
- Requires-Dist: certifi==2024.12.14
21
- Requires-Dist: cffi==1.17.1
22
- Requires-Dist: click==8.1.8
23
- Requires-Dist: cryptography==44.0.0
24
- Requires-Dist: dnspython==2.7.0
25
- Requires-Dist: email_validator==2.2.0
26
- Requires-Dist: fastapi==0.115.7
27
- Requires-Dist: fastapi-cli==0.0.7
28
- Requires-Dist: fastapi-socketio==0.0.10
29
- Requires-Dist: greenlet==3.1.1
30
- Requires-Dist: h11==0.14.0
31
- Requires-Dist: httpcore==1.0.7
32
- Requires-Dist: httptools==0.6.4
33
- Requires-Dist: httpx==0.28.1
34
- Requires-Dist: idna==3.10
35
- Requires-Dist: inflect==7.5.0
36
- Requires-Dist: iniconfig==2.0.0
37
- Requires-Dist: Jinja2==3.1.5
38
- Requires-Dist: Mako==1.3.8
39
- Requires-Dist: markdown-it-py==3.0.0
40
- Requires-Dist: MarkupSafe==3.0.2
41
- Requires-Dist: mdurl==0.1.2
42
- Requires-Dist: more-itertools==10.6.0
43
- Requires-Dist: oracledb==2.4.1
44
- Requires-Dist: packaging==24.2
45
- Requires-Dist: pluggy==1.5.0
46
- Requires-Dist: psycopg2-binary==2.9.10
47
- Requires-Dist: pycparser==2.22
48
- Requires-Dist: pydantic==2.10.6
49
- Requires-Dist: pydantic_core==2.27.2
50
- Requires-Dist: Pygments==2.19.1
51
- Requires-Dist: PyJWT==2.10.1
52
- Requires-Dist: pytest==8.3.4
53
- Requires-Dist: python-dotenv==1.0.1
54
- Requires-Dist: python-engineio==4.11.2
55
- Requires-Dist: python-multipart==0.0.20
56
- Requires-Dist: python-socketio==5.12.1
57
- Requires-Dist: PyYAML==6.0.2
58
- Requires-Dist: rich==13.9.4
59
- Requires-Dist: rich-toolkit==0.13.2
60
- Requires-Dist: setuptools==75.8.0
61
- Requires-Dist: shellingham==1.5.4
62
- Requires-Dist: simple-websocket==1.1.0
63
- Requires-Dist: sniffio==1.3.1
64
- Requires-Dist: SQLAlchemy==2.0.37
65
- Requires-Dist: starlette==0.45.3
66
- Requires-Dist: typeguard==4.4.1
67
- Requires-Dist: typer==0.15.1
68
- Requires-Dist: typing_extensions==4.12.2
69
- Requires-Dist: uvicorn==0.34.0
70
- Requires-Dist: uvloop==0.21.0
71
- Requires-Dist: watchfiles==1.0.4
72
- Requires-Dist: websockets==14.2
73
- Requires-Dist: wsproto==1.2.0
74
- Dynamic: author
75
- Dynamic: author-email
76
- Dynamic: classifier
77
- Dynamic: requires-dist
78
- Dynamic: requires-python
79
- Dynamic: summary