ntc-dev-kit 1.0.0__tar.gz → 1.0.3__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 (157) hide show
  1. {ntc_dev_kit-1.0.0/ntc_dev_kit.egg-info → ntc_dev_kit-1.0.3}/PKG-INFO +1 -1
  2. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/cli_enhanced.py +126 -1
  3. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3/ntc_dev_kit.egg-info}/PKG-INFO +1 -1
  4. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/pyproject.toml +1 -1
  5. ntc_dev_kit-1.0.3/setup.py +87 -0
  6. ntc_dev_kit-1.0.0/setup.py +0 -44
  7. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/LICENSE +0 -0
  8. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/MANIFEST.in +0 -0
  9. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/README.md +0 -0
  10. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/__init__.py +0 -0
  11. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/app_creator.py +0 -0
  12. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/cli.py +0 -0
  13. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/composer/__init__.py +0 -0
  14. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/composer/main.py +0 -0
  15. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/deployment/__init__.py +0 -0
  16. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/__init__.py +0 -0
  17. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/auth_app/__init__.py +0 -0
  18. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/auth_app/admin.py +0 -0
  19. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/auth_app/apps.py +0 -0
  20. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/auth_app/models.py +0 -0
  21. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/auth_app/serializers.py +0 -0
  22. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/auth_app/urls.py +0 -0
  23. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/auth_app/views.py +0 -0
  24. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/__init__.py +0 -0
  25. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/drf_structure.md +0 -0
  26. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/main.py +0 -0
  27. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/structure.json +0 -0
  28. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/.entry/start_core_backend.sh +0 -0
  29. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/.entry/start_tasks_backend.sh +0 -0
  30. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/CLAUDE.md +0 -0
  31. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/README.md +0 -0
  32. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/apps/app_admin.py +0 -0
  33. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/apps/app_apps.py +0 -0
  34. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/apps/app_models.py +0 -0
  35. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/apps/app_urls.py +0 -0
  36. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/apps/app_views.py +0 -0
  37. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/apps/common_apps.py +0 -0
  38. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/apps/common_models.py +0 -0
  39. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/config/gunicorn_config.py +0 -0
  40. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/config/http.conf +0 -0
  41. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/core/base_model.py +0 -0
  42. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/core/formatter.py +0 -0
  43. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/core/logger.py +0 -0
  44. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/core/pagination.py +0 -0
  45. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/core/response_wrapper.py +0 -0
  46. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/core/services/azure/email/backend.py +0 -0
  47. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/core/services/azure/email/client.py +0 -0
  48. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/core/services/azure/email/notifier.py +0 -0
  49. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/core/services/object_storage.py +0 -0
  50. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/django_project/asgi.py +0 -0
  51. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/django_project/celery.py +0 -0
  52. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/django_project/dev_settings.py +0 -0
  53. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/django_project/django_settings.txt +0 -0
  54. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/django_project/management_command.py +0 -0
  55. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/django_project/prod_settings.py +0 -0
  56. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/django_project/schema.py +0 -0
  57. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/django_project/urls.py +0 -0
  58. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/django_project/wsgi.py +0 -0
  59. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/docker/docker-compose.yml +0 -0
  60. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/knowledge/knowledge_description.md +0 -0
  61. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/knowledge/knowledge_design_pattern.md +0 -0
  62. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/knowledge/knowledge_structure.md +0 -0
  63. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/root/README.md +0 -0
  64. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/root/django_env.txt +0 -0
  65. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/root/django_requirements.txt +0 -0
  66. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/root/gitignore.txt +0 -0
  67. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/drf_structure/templates/root/manage.py +0 -0
  68. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/flutter/.gitignore +0 -0
  69. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/flutter/.knowledge/knowledge_description.md +0 -0
  70. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/flutter/.knowledge/knowledge_design_pattern.md +0 -0
  71. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/flutter/.knowledge/knowledge_structure.md +0 -0
  72. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/flutter/CLAUDE.md +0 -0
  73. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/flutter/__init__.py +0 -0
  74. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/flutter/analysis_options.yaml +0 -0
  75. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/flutter/main.py +0 -0
  76. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/flutter/pubspec.yaml +0 -0
  77. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/flutter/structure.json +0 -0
  78. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/nextjs/.env.example +0 -0
  79. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/nextjs/.gitignore +0 -0
  80. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/nextjs/CLAUDE.md +0 -0
  81. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/nextjs/README.md +0 -0
  82. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/nextjs/__init__.py +0 -0
  83. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/nextjs/knowledge/knowledge_description.md +0 -0
  84. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/nextjs/knowledge/knowledge_design_pattern.md +0 -0
  85. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/nextjs/knowledge/knowledge_structure.md +0 -0
  86. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/nextjs/main.py +0 -0
  87. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/nextjs/package.json +0 -0
  88. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/nextjs/src/app/globals.css +0 -0
  89. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/nextjs/src/app/layout.tsx +0 -0
  90. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/nextjs/src/app/page.tsx +0 -0
  91. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/nextjs/src/components/Header.tsx +0 -0
  92. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/nextjs/src/services/api.ts +0 -0
  93. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/nextjs/src/utils/constants.ts +0 -0
  94. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/nextjs/structure.json +0 -0
  95. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/nextjs/tsconfig.json +0 -0
  96. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/.env.example +0 -0
  97. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/.gitignore +0 -0
  98. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/CLAUDE.md +0 -0
  99. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/README.md +0 -0
  100. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/__init__.py +0 -0
  101. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/index.html +0 -0
  102. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/knowledge/knowledge_description.md +0 -0
  103. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/knowledge/knowledge_design_pattern.md +0 -0
  104. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/knowledge/knowledge_structure.md +0 -0
  105. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/main.py +0 -0
  106. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/package.json +0 -0
  107. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/src/App.tsx +0 -0
  108. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/src/components/ProtectedRoute.tsx +0 -0
  109. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/src/components/Sidebar.tsx +0 -0
  110. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/src/components/TopNav.tsx +0 -0
  111. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/src/context/AuthContext.tsx +0 -0
  112. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/src/context/ThemeContext.tsx +0 -0
  113. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/src/context/WorkspaceContext.tsx +0 -0
  114. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/src/hooks/useApi.ts +0 -0
  115. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/src/index.css +0 -0
  116. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/src/layouts/AuthLayout.tsx +0 -0
  117. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/src/layouts/DashboardLayout.tsx +0 -0
  118. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/src/main.tsx +0 -0
  119. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/src/pages/DashboardPage.tsx +0 -0
  120. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/src/pages/auth/LoginPage.tsx +0 -0
  121. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/src/pages/auth/RegisterPage.tsx +0 -0
  122. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/src/services/api.service.ts +0 -0
  123. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/src/services/base.service.ts +0 -0
  124. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/structure.json +0 -0
  125. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/tsconfig.app.json +0 -0
  126. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/tsconfig.json +0 -0
  127. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/tsconfig.node.json +0 -0
  128. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_admin/vite.config.ts +0 -0
  129. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_structure/CLAUDE.md +0 -0
  130. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_structure/__init__.py +0 -0
  131. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_structure/index.css +0 -0
  132. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_structure/index.html +0 -0
  133. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_structure/knowledge/knowledge_description.md +0 -0
  134. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_structure/knowledge/knowledge_design_pattern.md +0 -0
  135. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_structure/knowledge/knowledge_structure.md +0 -0
  136. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_structure/main.py +0 -0
  137. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_structure/package.json +0 -0
  138. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_structure/src/App.tsx +0 -0
  139. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_structure/src/components/Header.tsx +0 -0
  140. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_structure/src/main.tsx +0 -0
  141. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_structure/src/services/api.ts +0 -0
  142. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_structure/src/utils/constants.ts +0 -0
  143. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_structure/structure.json +0 -0
  144. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_structure/tsconfig.app.json +0 -0
  145. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_structure/tsconfig.json +0 -0
  146. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_structure/tsconfig.node.json +0 -0
  147. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/templates/react_structure/vite.config.ts +0 -0
  148. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/utils/__init__.py +0 -0
  149. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/utils/environment.py +0 -0
  150. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc/utils/output.py +0 -0
  151. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc_dev_kit.egg-info/SOURCES.txt +0 -0
  152. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc_dev_kit.egg-info/dependency_links.txt +0 -0
  153. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc_dev_kit.egg-info/entry_points.txt +0 -0
  154. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc_dev_kit.egg-info/requires.txt +0 -0
  155. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/ntc_dev_kit.egg-info/top_level.txt +0 -0
  156. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/requirements.txt +0 -0
  157. {ntc_dev_kit-1.0.0 → ntc_dev_kit-1.0.3}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ntc-dev-kit
3
- Version: 1.0.0
3
+ Version: 1.0.3
4
4
  Summary: Nexent Toolkit Console - A CLI tool for scaffolding Django REST Framework, React, Next.js, and Flutter projects
5
5
  Home-page: https://github.com/nexent/ntc
6
6
  Author: Nexent
@@ -699,6 +699,126 @@ def show_success_screen(project_name, project_type, technology, project_path):
699
699
  print(f"\n{Fore.CYAN}Press any key to exit...{Style.RESET_ALL}")
700
700
  get_key()
701
701
 
702
+ def run_doctor():
703
+ """Check setup and fix common issues like PATH configuration."""
704
+ import shutil
705
+ import site
706
+ import subprocess
707
+
708
+ clear_screen()
709
+ print_banner()
710
+ print_menu_header("NTC DOCTOR", "Setup Diagnostics & Repair")
711
+
712
+ issues_found = 0
713
+ issues_fixed = 0
714
+
715
+ # 1. Check Python version
716
+ print(f"\n{Fore.CYAN}🔍 Checking Python...{Style.RESET_ALL}")
717
+ py_version = sys.version_info
718
+ if py_version >= (3, 10):
719
+ print_success(f"Python {py_version.major}.{py_version.minor}.{py_version.micro} (>= 3.10 required)")
720
+ else:
721
+ print_error(f"Python {py_version.major}.{py_version.minor} found. Python >= 3.10 required.")
722
+ issues_found += 1
723
+
724
+ # 2. Check dependencies
725
+ print(f"\n{Fore.CYAN}🔍 Checking dependencies...{Style.RESET_ALL}")
726
+ deps_ok = True
727
+ try:
728
+ import colorama
729
+ print_success("colorama installed")
730
+ except ImportError:
731
+ print_error("colorama not found")
732
+ deps_ok = False
733
+
734
+ try:
735
+ import yaml
736
+ print_success("pyyaml installed")
737
+ except ImportError:
738
+ print_error("pyyaml not found")
739
+ deps_ok = False
740
+
741
+ if not deps_ok:
742
+ issues_found += 1
743
+ print_info("Install missing dependencies: pip install colorama pyyaml")
744
+
745
+ # 3. Check if ntc command is accessible
746
+ print(f"\n{Fore.CYAN}🔍 Checking ntc command accessibility...{Style.RESET_ALL}")
747
+ ntc_in_path = shutil.which("ntc") is not None
748
+ if ntc_in_path:
749
+ print_success("'ntc' command found in PATH")
750
+ print_info(f" Location: {shutil.which('ntc')}")
751
+ else:
752
+ print_error("'ntc' command NOT found in PATH")
753
+ issues_found += 1
754
+
755
+ # 4. Check user Scripts directory
756
+ print(f"\n{Fore.CYAN}🔍 Checking user Scripts directory...{Style.RESET_ALL}")
757
+ scripts_dir = os.path.join(site.USER_BASE, "Scripts")
758
+ if os.path.exists(scripts_dir):
759
+ print_success(f"Scripts directory exists: {scripts_dir}")
760
+ else:
761
+ print_warning(f"Scripts directory missing: {scripts_dir}")
762
+ print_info("Creating Scripts directory...")
763
+ os.makedirs(scripts_dir, exist_ok=True)
764
+ print_success("Scripts directory created")
765
+ issues_fixed += 1
766
+
767
+ # 5. Check PATH on Windows
768
+ if os.name == "nt":
769
+ print(f"\n{Fore.CYAN}🔍 Checking Windows PATH...{Style.RESET_ALL}")
770
+ current_path = os.environ.get("PATH", "")
771
+ if scripts_dir.lower() in current_path.lower():
772
+ print_success("User Scripts directory is in current PATH")
773
+ else:
774
+ print_warning("User Scripts directory is NOT in current PATH")
775
+ print_info("Attempting to add to user PATH registry...")
776
+ try:
777
+ import winreg
778
+ with winreg.OpenKey(
779
+ winreg.HKEY_CURRENT_USER,
780
+ "Environment",
781
+ 0,
782
+ winreg.KEY_READ | winreg.KEY_WRITE,
783
+ ) as key:
784
+ existing, _ = winreg.QueryValueEx(key, "PATH")
785
+ if scripts_dir.lower() not in existing.lower():
786
+ new_path = f"{existing};{scripts_dir}"
787
+ winreg.SetValueEx(key, "PATH", 0, winreg.REG_EXPAND_SZ, new_path)
788
+ os.environ["PATH"] = new_path
789
+ print_success(f"Added {scripts_dir} to user PATH")
790
+ issues_fixed += 1
791
+ else:
792
+ print_success("Already in registry PATH (restart terminal needed)")
793
+ except Exception as e:
794
+ print_error(f"Failed to modify PATH: {e}")
795
+ print_info(f"Manually add this to your PATH: {scripts_dir}")
796
+ issues_found += 1
797
+
798
+ # 6. Check ntc package installation
799
+ print(f"\n{Fore.CYAN}🔍 Checking ntc-dev-kit installation...{Style.RESET_ALL}")
800
+ try:
801
+ import ntc
802
+ print_success(f"ntc-dev-kit version {ntc.__version__} installed")
803
+ except (ImportError, AttributeError):
804
+ print_error("ntc-dev-kit not properly installed")
805
+ issues_found += 1
806
+
807
+ # Summary
808
+ print(f"\n{Fore.CYAN}{'═' * 70}{Style.RESET_ALL}")
809
+ if issues_found == 0 and issues_fixed == 0:
810
+ print(f"{Fore.GREEN}🎉 All checks passed! NTC is ready to use.{Style.RESET_ALL}")
811
+ elif issues_fixed > 0:
812
+ print(f"{Fore.GREEN}✅ Fixed {issues_fixed} issue(s).{Style.RESET_ALL}")
813
+ if issues_found > 0:
814
+ print(f"{Fore.YELLOW}⚠️ {issues_found} issue(s) still require manual attention.{Style.RESET_ALL}")
815
+ print(f"{Fore.CYAN}🔄 Please restart your terminal for PATH changes to take effect.{Style.RESET_ALL}")
816
+ else:
817
+ print(f"{Fore.RED}❌ {issues_found} issue(s) found.{Style.RESET_ALL}")
818
+ print(f"{Fore.YELLOW}💡 Run 'ntc doctor' again after fixing the issues above.{Style.RESET_ALL}")
819
+ print(f"{Fore.CYAN}{'═' * 70}{Style.RESET_ALL}\n")
820
+
821
+
702
822
  def main():
703
823
  parser = argparse.ArgumentParser(
704
824
  description="NTC - Nexent Toolkit Console",
@@ -755,7 +875,10 @@ Examples:
755
875
  # Start services command
756
876
  start_parser = subparsers.add_parser("start", help="Start all services defined in ntc.yml")
757
877
  start_parser.add_argument("--path", help="Path to project root directory (default: current directory)")
758
-
878
+
879
+ # Doctor command for setup diagnostics
880
+ doctor_parser = subparsers.add_parser("doctor", help="Check setup and fix common issues")
881
+
759
882
  args = parser.parse_args()
760
883
 
761
884
  if args.command == "init":
@@ -803,6 +926,8 @@ Examples:
803
926
  start_services(args.path)
804
927
  else:
805
928
  start_services()
929
+ elif args.command == "doctor":
930
+ run_doctor()
806
931
  else:
807
932
  # Show help if no command provided
808
933
  print_banner()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ntc-dev-kit
3
- Version: 1.0.0
3
+ Version: 1.0.3
4
4
  Summary: Nexent Toolkit Console - A CLI tool for scaffolding Django REST Framework, React, Next.js, and Flutter projects
5
5
  Home-page: https://github.com/nexent/ntc
6
6
  Author: Nexent
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "ntc-dev-kit"
7
- version = "1.0.0"
7
+ version = "1.0.3"
8
8
  description = "Nexent Toolkit Console - A CLI tool for scaffolding Django REST Framework, React, Next.js, and Flutter projects"
9
9
  readme = "README.md"
10
10
  license = {text = "MIT"}
@@ -0,0 +1,87 @@
1
+ """Setup script for ntc package. Prefer pyproject.toml for modern builds."""
2
+ import os
3
+ import sys
4
+ import site
5
+ from pathlib import Path
6
+ from setuptools import setup, find_packages
7
+ from setuptools.command.install import install
8
+
9
+ # Read README for long description
10
+ readme_path = Path(__file__).parent / "README.md"
11
+ long_description = readme_path.read_text(encoding="utf-8") if readme_path.exists() else ""
12
+
13
+
14
+ class PostInstallCommand(install):
15
+ """Post-install hook to add user Scripts directory to PATH on Windows."""
16
+
17
+ def run(self):
18
+ install.run(self)
19
+ if os.name == "nt":
20
+ self._add_scripts_to_path()
21
+
22
+ def _add_scripts_to_path(self):
23
+ scripts_dir = os.path.join(site.USER_BASE, "Scripts")
24
+ if not os.path.exists(scripts_dir):
25
+ os.makedirs(scripts_dir, exist_ok=True)
26
+
27
+ current_path = os.environ.get("PATH", "")
28
+ if scripts_dir.lower() in current_path.lower():
29
+ return
30
+
31
+ try:
32
+ import winreg
33
+ with winreg.OpenKey(
34
+ winreg.HKEY_CURRENT_USER,
35
+ "Environment",
36
+ 0,
37
+ winreg.KEY_READ | winreg.KEY_WRITE,
38
+ ) as key:
39
+ existing, _ = winreg.QueryValueEx(key, "PATH")
40
+ if scripts_dir.lower() not in existing.lower():
41
+ new_path = f"{existing};{scripts_dir}"
42
+ winreg.SetValueEx(key, "PATH", 0, winreg.REG_EXPAND_SZ, new_path)
43
+ os.environ["PATH"] = new_path
44
+ print(f"\n[ntc-dev-kit] Added {scripts_dir} to user PATH.")
45
+ print("[ntc-dev-kit] Please restart your terminal for changes to take effect.\n")
46
+ except Exception:
47
+ print(f"\n[ntc-dev-kit] Please manually add {scripts_dir} to your PATH.")
48
+ print("[ntc-dev-kit] Then restart your terminal and run: ntc --version\n")
49
+
50
+
51
+ setup(
52
+ name="ntc-dev-kit",
53
+ version="1.0.3",
54
+ description="Nexent Toolkit Console - CLI scaffolding tool for Django, React, Next.js, and Flutter",
55
+ long_description=long_description,
56
+ long_description_content_type="text/markdown",
57
+ author="Nexent",
58
+ author_email="dev@nexent.com",
59
+ url="https://github.com/nexent/ntc",
60
+ packages=find_packages(),
61
+ include_package_data=True,
62
+ python_requires=">=3.10",
63
+ install_requires=[
64
+ "colorama>=0.4.6",
65
+ "pyyaml>=6.0",
66
+ ],
67
+ entry_points={
68
+ "console_scripts": [
69
+ "ntc=ntc.cli:main",
70
+ ],
71
+ },
72
+ cmdclass={"install": PostInstallCommand},
73
+ classifiers=[
74
+ "Development Status :: 4 - Beta",
75
+ "Environment :: Console",
76
+ "Intended Audience :: Developers",
77
+ "License :: OSI Approved :: MIT License",
78
+ "Operating System :: OS Independent",
79
+ "Programming Language :: Python :: 3",
80
+ "Programming Language :: Python :: 3.10",
81
+ "Programming Language :: Python :: 3.11",
82
+ "Programming Language :: Python :: 3.12",
83
+ "Topic :: Software Development :: Code Generators",
84
+ "Topic :: Utilities",
85
+ ],
86
+ keywords="cli scaffold django drf react nextjs flutter generator boilerplate",
87
+ )
@@ -1,44 +0,0 @@
1
- """Setup script for ntc package. Prefer pyproject.toml for modern builds."""
2
- from pathlib import Path
3
- from setuptools import setup, find_packages
4
-
5
- # Read README for long description
6
- readme_path = Path(__file__).parent / "README.md"
7
- long_description = readme_path.read_text(encoding="utf-8") if readme_path.exists() else ""
8
-
9
- setup(
10
- name="ntc-dev-kit",
11
- version="1.0.0",
12
- description="Nexent Toolkit Console - CLI scaffolding tool for Django, React, Next.js, and Flutter",
13
- long_description=long_description,
14
- long_description_content_type="text/markdown",
15
- author="Nexent",
16
- author_email="dev@nexent.com",
17
- url="https://github.com/nexent/ntc",
18
- packages=find_packages(),
19
- include_package_data=True,
20
- python_requires=">=3.10",
21
- install_requires=[
22
- "colorama>=0.4.6",
23
- "pyyaml>=6.0",
24
- ],
25
- entry_points={
26
- "console_scripts": [
27
- "ntc=ntc.cli:main",
28
- ],
29
- },
30
- classifiers=[
31
- "Development Status :: 4 - Beta",
32
- "Environment :: Console",
33
- "Intended Audience :: Developers",
34
- "License :: OSI Approved :: MIT License",
35
- "Operating System :: OS Independent",
36
- "Programming Language :: Python :: 3",
37
- "Programming Language :: Python :: 3.10",
38
- "Programming Language :: Python :: 3.11",
39
- "Programming Language :: Python :: 3.12",
40
- "Topic :: Software Development :: Code Generators",
41
- "Topic :: Utilities",
42
- ],
43
- keywords="cli scaffold django drf react nextjs flutter generator boilerplate",
44
- )
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes