ziyodev-django 0.2.0__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 (159) hide show
  1. ziyodev_django-0.2.0/LICENSE +21 -0
  2. ziyodev_django-0.2.0/MANIFEST.in +2 -0
  3. ziyodev_django-0.2.0/PKG-INFO +368 -0
  4. ziyodev_django-0.2.0/README.md +336 -0
  5. ziyodev_django-0.2.0/pyproject.toml +79 -0
  6. ziyodev_django-0.2.0/setup.cfg +4 -0
  7. ziyodev_django-0.2.0/setup.py +39 -0
  8. ziyodev_django-0.2.0/ziyodev-django/src/api/admin/__init__.py +0 -0
  9. ziyodev_django-0.2.0/ziyodev-django/src/api/admin/exceptions.py +9 -0
  10. ziyodev_django-0.2.0/ziyodev-django/src/api/admin/filters.py +0 -0
  11. ziyodev_django-0.2.0/ziyodev-django/src/api/admin/helpers.py +0 -0
  12. ziyodev_django-0.2.0/ziyodev-django/src/api/admin/permissions.py +8 -0
  13. ziyodev_django-0.2.0/ziyodev-django/src/api/admin/serializers/__init__.py +0 -0
  14. ziyodev_django-0.2.0/ziyodev-django/src/api/admin/tests.py +1 -0
  15. ziyodev_django-0.2.0/ziyodev-django/src/api/admin/urls.py +13 -0
  16. ziyodev_django-0.2.0/ziyodev-django/src/api/admin/views/__init__.py +0 -0
  17. ziyodev_django-0.2.0/ziyodev-django/src/api/admin/views/test.py +13 -0
  18. ziyodev_django-0.2.0/ziyodev-django/src/api/pagination.py +52 -0
  19. ziyodev_django-0.2.0/ziyodev-django/src/api/send_mail_sms.py +30 -0
  20. ziyodev_django-0.2.0/ziyodev-django/src/api/serializers.py +0 -0
  21. ziyodev_django-0.2.0/ziyodev-django/src/api/urls.py +6 -0
  22. ziyodev_django-0.2.0/ziyodev-django/src/api/user/__init__.py +0 -0
  23. ziyodev_django-0.2.0/ziyodev-django/src/api/user/exceptions.py +9 -0
  24. ziyodev_django-0.2.0/ziyodev-django/src/api/user/filters.py +10 -0
  25. ziyodev_django-0.2.0/ziyodev-django/src/api/user/helpers.py +0 -0
  26. ziyodev_django-0.2.0/ziyodev-django/src/api/user/permissions.py +8 -0
  27. ziyodev_django-0.2.0/ziyodev-django/src/api/user/serializers/__init__.py +0 -0
  28. ziyodev_django-0.2.0/ziyodev-django/src/api/user/serializers/user_serializers.py +52 -0
  29. ziyodev_django-0.2.0/ziyodev-django/src/api/user/tests.py +1 -0
  30. ziyodev_django-0.2.0/ziyodev-django/src/api/user/urls.py +32 -0
  31. ziyodev_django-0.2.0/ziyodev-django/src/api/user/views/__init__.py +0 -0
  32. ziyodev_django-0.2.0/ziyodev-django/src/api/user/views/change_email_views.py +112 -0
  33. ziyodev_django-0.2.0/ziyodev-django/src/api/user/views/change_password_views.py +144 -0
  34. ziyodev_django-0.2.0/ziyodev-django/src/api/user/views/forget_password_views.py +130 -0
  35. ziyodev_django-0.2.0/ziyodev-django/src/api/user/views/home_views.py +23 -0
  36. ziyodev_django-0.2.0/ziyodev-django/src/api/user/views/login_views.py +30 -0
  37. ziyodev_django-0.2.0/ziyodev-django/src/api/user/views/register_views.py +79 -0
  38. ziyodev_django-0.2.0/ziyodev-django/src/api/user/views/resend_code_views.py +121 -0
  39. ziyodev_django-0.2.0/ziyodev-django/src/api/user/views/verifications_views.py +179 -0
  40. ziyodev_django-0.2.0/ziyodev-django/src/api/views.py +0 -0
  41. ziyodev_django-0.2.0/ziyodev-django/src/apps/users/__init__.py +0 -0
  42. ziyodev_django-0.2.0/ziyodev-django/src/apps/users/admin.py +161 -0
  43. ziyodev_django-0.2.0/ziyodev-django/src/apps/users/apps.py +6 -0
  44. ziyodev_django-0.2.0/ziyodev-django/src/apps/users/migrations/0001_initial.py +42 -0
  45. ziyodev_django-0.2.0/ziyodev-django/src/apps/users/migrations/0002_userotpverifications.py +25 -0
  46. ziyodev_django-0.2.0/ziyodev-django/src/apps/users/migrations/0003_userotpverifications_attapts_and_more.py +25 -0
  47. ziyodev_django-0.2.0/ziyodev-django/src/apps/users/migrations/0004_alter_userotpverifications_error_expired_at.py +18 -0
  48. ziyodev_django-0.2.0/ziyodev-django/src/apps/users/migrations/0005_alter_userotpverifications_error_expired_at.py +18 -0
  49. ziyodev_django-0.2.0/ziyodev-django/src/apps/users/migrations/0006_userotpidverifications.py +28 -0
  50. ziyodev_django-0.2.0/ziyodev-django/src/apps/users/migrations/0007_userotpverifications_resend_attapts.py +18 -0
  51. ziyodev_django-0.2.0/ziyodev-django/src/apps/users/migrations/0008_userotpverifications_for_forget_password.py +18 -0
  52. ziyodev_django-0.2.0/ziyodev-django/src/apps/users/migrations/0009_userotpverifications_for_forget_password_verified.py +18 -0
  53. ziyodev_django-0.2.0/ziyodev-django/src/apps/users/migrations/0010_changepasswordlogs.py +28 -0
  54. ziyodev_django-0.2.0/ziyodev-django/src/apps/users/migrations/0011_changepasswordlogs_is_changed.py +18 -0
  55. ziyodev_django-0.2.0/ziyodev-django/src/apps/users/migrations/0012_changeemaillogs.py +28 -0
  56. ziyodev_django-0.2.0/ziyodev-django/src/apps/users/migrations/0013_changeemaillogs_new_email.py +18 -0
  57. ziyodev_django-0.2.0/ziyodev-django/src/apps/users/migrations/0014_changeemaillogs_old_email.py +18 -0
  58. ziyodev_django-0.2.0/ziyodev-django/src/apps/users/migrations/0015_changeemaillogs_resend_attapts.py +18 -0
  59. ziyodev_django-0.2.0/ziyodev-django/src/apps/users/migrations/__init__.py +0 -0
  60. ziyodev_django-0.2.0/ziyodev-django/src/apps/users/models.py +187 -0
  61. ziyodev_django-0.2.0/ziyodev-django/src/apps/users/tests.py +3 -0
  62. ziyodev_django-0.2.0/ziyodev-django/src/apps/utils/__init__.py +0 -0
  63. ziyodev_django-0.2.0/ziyodev-django/src/apps/utils/admin.py +1 -0
  64. ziyodev_django-0.2.0/ziyodev-django/src/apps/utils/apps.py +7 -0
  65. ziyodev_django-0.2.0/ziyodev-django/src/apps/utils/management/__init__.py +0 -0
  66. ziyodev_django-0.2.0/ziyodev-django/src/apps/utils/management/commands/__init__.py +0 -0
  67. ziyodev_django-0.2.0/ziyodev-django/src/apps/utils/migrations/__init__.py +0 -0
  68. ziyodev_django-0.2.0/ziyodev-django/src/apps/utils/models.py +14 -0
  69. ziyodev_django-0.2.0/ziyodev-django/src/apps/utils/tests.py +3 -0
  70. ziyodev_django-0.2.0/ziyodev-django/src/config/__init__.py +7 -0
  71. ziyodev_django-0.2.0/ziyodev-django/src/config/asgi.py +16 -0
  72. ziyodev_django-0.2.0/ziyodev-django/src/config/celery.py +22 -0
  73. ziyodev_django-0.2.0/ziyodev-django/src/config/settings/__init__.py +19 -0
  74. ziyodev_django-0.2.0/ziyodev-django/src/config/settings/base.py +186 -0
  75. ziyodev_django-0.2.0/ziyodev-django/src/config/settings/development.py +34 -0
  76. ziyodev_django-0.2.0/ziyodev-django/src/config/settings/production.py +37 -0
  77. ziyodev_django-0.2.0/ziyodev-django/src/config/urls.py +20 -0
  78. ziyodev_django-0.2.0/ziyodev-django/src/config/wsgi.py +16 -0
  79. ziyodev_django-0.2.0/ziyodev-django/src/manage.py +22 -0
  80. ziyodev_django-0.2.0/ziyodev_django/__init__.py +0 -0
  81. ziyodev_django-0.2.0/ziyodev_django/cli.py +21 -0
  82. ziyodev_django-0.2.0/ziyodev_django/template/src/api/admin/__init__.py +0 -0
  83. ziyodev_django-0.2.0/ziyodev_django/template/src/api/admin/exceptions.py +9 -0
  84. ziyodev_django-0.2.0/ziyodev_django/template/src/api/admin/filters.py +0 -0
  85. ziyodev_django-0.2.0/ziyodev_django/template/src/api/admin/helpers.py +0 -0
  86. ziyodev_django-0.2.0/ziyodev_django/template/src/api/admin/permissions.py +8 -0
  87. ziyodev_django-0.2.0/ziyodev_django/template/src/api/admin/serializers/__init__.py +0 -0
  88. ziyodev_django-0.2.0/ziyodev_django/template/src/api/admin/tests.py +1 -0
  89. ziyodev_django-0.2.0/ziyodev_django/template/src/api/admin/urls.py +13 -0
  90. ziyodev_django-0.2.0/ziyodev_django/template/src/api/admin/views/__init__.py +0 -0
  91. ziyodev_django-0.2.0/ziyodev_django/template/src/api/admin/views/test.py +13 -0
  92. ziyodev_django-0.2.0/ziyodev_django/template/src/api/pagination.py +52 -0
  93. ziyodev_django-0.2.0/ziyodev_django/template/src/api/send_mail_sms.py +30 -0
  94. ziyodev_django-0.2.0/ziyodev_django/template/src/api/serializers.py +0 -0
  95. ziyodev_django-0.2.0/ziyodev_django/template/src/api/urls.py +6 -0
  96. ziyodev_django-0.2.0/ziyodev_django/template/src/api/user/__init__.py +0 -0
  97. ziyodev_django-0.2.0/ziyodev_django/template/src/api/user/exceptions.py +9 -0
  98. ziyodev_django-0.2.0/ziyodev_django/template/src/api/user/filters.py +10 -0
  99. ziyodev_django-0.2.0/ziyodev_django/template/src/api/user/helpers.py +0 -0
  100. ziyodev_django-0.2.0/ziyodev_django/template/src/api/user/permissions.py +8 -0
  101. ziyodev_django-0.2.0/ziyodev_django/template/src/api/user/serializers/__init__.py +0 -0
  102. ziyodev_django-0.2.0/ziyodev_django/template/src/api/user/serializers/user_serializers.py +52 -0
  103. ziyodev_django-0.2.0/ziyodev_django/template/src/api/user/tests.py +1 -0
  104. ziyodev_django-0.2.0/ziyodev_django/template/src/api/user/urls.py +32 -0
  105. ziyodev_django-0.2.0/ziyodev_django/template/src/api/user/views/__init__.py +0 -0
  106. ziyodev_django-0.2.0/ziyodev_django/template/src/api/user/views/change_email_views.py +112 -0
  107. ziyodev_django-0.2.0/ziyodev_django/template/src/api/user/views/change_password_views.py +144 -0
  108. ziyodev_django-0.2.0/ziyodev_django/template/src/api/user/views/forget_password_views.py +130 -0
  109. ziyodev_django-0.2.0/ziyodev_django/template/src/api/user/views/home_views.py +23 -0
  110. ziyodev_django-0.2.0/ziyodev_django/template/src/api/user/views/login_views.py +30 -0
  111. ziyodev_django-0.2.0/ziyodev_django/template/src/api/user/views/register_views.py +79 -0
  112. ziyodev_django-0.2.0/ziyodev_django/template/src/api/user/views/resend_code_views.py +121 -0
  113. ziyodev_django-0.2.0/ziyodev_django/template/src/api/user/views/verifications_views.py +179 -0
  114. ziyodev_django-0.2.0/ziyodev_django/template/src/api/views.py +0 -0
  115. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/users/__init__.py +0 -0
  116. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/users/admin.py +161 -0
  117. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/users/apps.py +6 -0
  118. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/users/migrations/0001_initial.py +42 -0
  119. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/users/migrations/0002_userotpverifications.py +25 -0
  120. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/users/migrations/0003_userotpverifications_attapts_and_more.py +25 -0
  121. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/users/migrations/0004_alter_userotpverifications_error_expired_at.py +18 -0
  122. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/users/migrations/0005_alter_userotpverifications_error_expired_at.py +18 -0
  123. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/users/migrations/0006_userotpidverifications.py +28 -0
  124. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/users/migrations/0007_userotpverifications_resend_attapts.py +18 -0
  125. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/users/migrations/0008_userotpverifications_for_forget_password.py +18 -0
  126. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/users/migrations/0009_userotpverifications_for_forget_password_verified.py +18 -0
  127. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/users/migrations/0010_changepasswordlogs.py +28 -0
  128. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/users/migrations/0011_changepasswordlogs_is_changed.py +18 -0
  129. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/users/migrations/0012_changeemaillogs.py +28 -0
  130. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/users/migrations/0013_changeemaillogs_new_email.py +18 -0
  131. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/users/migrations/0014_changeemaillogs_old_email.py +18 -0
  132. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/users/migrations/0015_changeemaillogs_resend_attapts.py +18 -0
  133. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/users/migrations/__init__.py +0 -0
  134. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/users/models.py +187 -0
  135. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/users/tests.py +3 -0
  136. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/utils/__init__.py +0 -0
  137. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/utils/admin.py +1 -0
  138. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/utils/apps.py +7 -0
  139. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/utils/management/__init__.py +0 -0
  140. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/utils/management/commands/__init__.py +0 -0
  141. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/utils/migrations/__init__.py +0 -0
  142. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/utils/models.py +14 -0
  143. ziyodev_django-0.2.0/ziyodev_django/template/src/apps/utils/tests.py +3 -0
  144. ziyodev_django-0.2.0/ziyodev_django/template/src/config/__init__.py +7 -0
  145. ziyodev_django-0.2.0/ziyodev_django/template/src/config/asgi.py +16 -0
  146. ziyodev_django-0.2.0/ziyodev_django/template/src/config/celery.py +22 -0
  147. ziyodev_django-0.2.0/ziyodev_django/template/src/config/settings/__init__.py +19 -0
  148. ziyodev_django-0.2.0/ziyodev_django/template/src/config/settings/base.py +186 -0
  149. ziyodev_django-0.2.0/ziyodev_django/template/src/config/settings/development.py +34 -0
  150. ziyodev_django-0.2.0/ziyodev_django/template/src/config/settings/production.py +37 -0
  151. ziyodev_django-0.2.0/ziyodev_django/template/src/config/urls.py +20 -0
  152. ziyodev_django-0.2.0/ziyodev_django/template/src/config/wsgi.py +16 -0
  153. ziyodev_django-0.2.0/ziyodev_django/template/src/manage.py +22 -0
  154. ziyodev_django-0.2.0/ziyodev_django.egg-info/PKG-INFO +368 -0
  155. ziyodev_django-0.2.0/ziyodev_django.egg-info/SOURCES.txt +157 -0
  156. ziyodev_django-0.2.0/ziyodev_django.egg-info/dependency_links.txt +1 -0
  157. ziyodev_django-0.2.0/ziyodev_django.egg-info/entry_points.txt +2 -0
  158. ziyodev_django-0.2.0/ziyodev_django.egg-info/requires.txt +5 -0
  159. ziyodev_django-0.2.0/ziyodev_django.egg-info/top_level.txt +3 -0
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Ziyodev
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,2 @@
1
+ graft ziyodev-django/template
2
+ global-exclude *.py[cod]
@@ -0,0 +1,368 @@
1
+ Metadata-Version: 2.4
2
+ Name: ziyodev-django
3
+ Version: 0.2.0
4
+ Summary: Production-ready Django starter template with authentication system, REST API, deployment configs, and modular architecture.
5
+ Author-email: Ziyodullo Aliyev <ziyodullodev@gmail.com>
6
+ License: MIT
7
+ Project-URL: Homepage, https://github.com/Ziyodullodev
8
+ Project-URL: Repository, https://github.com/Ziyodullodev
9
+ Project-URL: Issues, https://github.com/Ziyodullodev
10
+ Keywords: Django,djangorestframework,django-filter,psycopg2-binary,Pillow,django-cors-headers,djangorestframework-simplejwt,drf-spectacular,celery,redis,django-environ,pytz,django-jazzmin
11
+ Classifier: Development Status :: 4 - Beta
12
+ Classifier: Framework :: Django
13
+ Classifier: Framework :: Django :: 5.0
14
+ Classifier: Intended Audience :: Developers
15
+ Classifier: License :: OSI Approved :: MIT License
16
+ Classifier: Operating System :: OS Independent
17
+ Classifier: Programming Language :: Python :: 3
18
+ Classifier: Programming Language :: Python :: 3.10
19
+ Classifier: Programming Language :: Python :: 3.11
20
+ Classifier: Programming Language :: Python :: 3.12
21
+ Classifier: Topic :: Internet :: WWW/HTTP
22
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
23
+ Requires-Python: >=3.10
24
+ Description-Content-Type: text/markdown
25
+ License-File: LICENSE
26
+ Requires-Dist: Django>=5.0
27
+ Requires-Dist: djangorestframework>=3.15.0
28
+ Requires-Dist: django-environ>=0.11.2
29
+ Requires-Dist: django-jazzmin>=3.0.1
30
+ Requires-Dist: gunicorn>=23.0.0
31
+ Dynamic: license-file
32
+
33
+ # Ziyodev Django
34
+
35
+ Production-ready Django starter template with authentication system, REST API support, deployment configuration, and scalable project structure.
36
+
37
+ This template is designed for quickly building modern Django applications with clean architecture and reusable components.
38
+
39
+ ---
40
+
41
+ # Features
42
+
43
+ - Django REST Framework
44
+ - Authentication system
45
+ - Login / Register
46
+ - Forget password
47
+ - Change password
48
+ - Change email
49
+ - OTP verification
50
+ - SMTP email integration
51
+ - Environment variables support
52
+ - Jazzmin admin panel
53
+ - Gunicorn configuration
54
+ - Nginx deployment config
55
+ - Modular architecture
56
+ - Ready for production
57
+
58
+ ---
59
+
60
+ # Project Structure
61
+
62
+ ```bash
63
+ project/
64
+ │
65
+ ├── deployment/
66
+ │ ├── gunicorn.service
67
+ │ ├── gunicorn.socket
68
+ │ └── nginx.conf
69
+ │
70
+ ├── src/
71
+ │ ├── api/
72
+ │ ├── apps/
73
+ │ ├── config/
74
+ │ ├── images/
75
+ │ ├── requirements/
76
+ │ ├── static/
77
+ │ ├── templates/
78
+ │ ├── .env
79
+ │ ├── .env.example
80
+ │ ├── db.sqlite3
81
+ │ └── manage.py
82
+ │
83
+ ├── venv/
84
+ ├── .gitignore
85
+ └── README.md
86
+ ```
87
+
88
+ ---
89
+
90
+ # Installation
91
+
92
+ ## 1. Install package
93
+
94
+ ```bash
95
+ pip install ziyodev-django
96
+ ```
97
+
98
+ ---
99
+
100
+ # Create New Project
101
+
102
+ Initialize new Django project:
103
+
104
+ ```bash
105
+ ziyodev-django init myproject
106
+ ```
107
+
108
+ Enter project folder:
109
+
110
+ ```bash
111
+ cd myproject
112
+ ```
113
+
114
+ ---
115
+
116
+ # Virtual Environment
117
+
118
+ ## Linux / macOS
119
+
120
+ Create venv:
121
+
122
+ ```bash
123
+ python3 -m venv venv
124
+ ```
125
+
126
+ Activate:
127
+
128
+ ```bash
129
+ source venv/bin/activate
130
+ ```
131
+
132
+ ---
133
+
134
+ ## Windows
135
+
136
+ Create venv:
137
+
138
+ ```bash
139
+ python -m venv venv
140
+ ```
141
+
142
+ Activate:
143
+
144
+ ```bash
145
+ venv\Scripts\activate
146
+ ```
147
+
148
+ ---
149
+
150
+ # Install Requirements
151
+
152
+ ```bash
153
+ pip install -r src/requirements/dev.txt
154
+ ```
155
+
156
+ ---
157
+
158
+ # Environment Variables
159
+
160
+ Copy `.env.example`:
161
+
162
+ ## Linux / macOS
163
+
164
+ ```bash
165
+ cp src/.env.example src/.env
166
+ ```
167
+
168
+ ## Windows
169
+
170
+ ```bash
171
+ copy src/.env.example src/.env
172
+ ```
173
+
174
+ Example `.env`:
175
+
176
+ ```env
177
+ DEBUG=True
178
+
179
+ SECRET_KEY=your_secret_key
180
+
181
+ ALLOWED_HOSTS=127.0.0.1,localhost
182
+
183
+ EMAIL_HOST=smtp.gmail.com
184
+ EMAIL_PORT=587
185
+ EMAIL_HOST_USER=example@gmail.com
186
+ EMAIL_HOST_PASSWORD=password
187
+
188
+ DATABASE_URL=sqlite:///db.sqlite3
189
+ ```
190
+
191
+ ---
192
+
193
+ # Database
194
+
195
+ Run migrations:
196
+
197
+ ```bash
198
+ cd src
199
+ python manage.py migrate
200
+ ```
201
+
202
+ Create superuser:
203
+
204
+ ```bash
205
+ python manage.py createsuperuser
206
+ ```
207
+
208
+ ---
209
+
210
+ # Run Development Server
211
+
212
+ ```bash
213
+ python manage.py runserver
214
+ ```
215
+
216
+ Server:
217
+
218
+ ```txt
219
+ http://127.0.0.1:8000/
220
+ ```
221
+
222
+ ---
223
+
224
+ # Authentication System
225
+
226
+ Included authentication features:
227
+
228
+ - User registration
229
+ - Login
230
+ - Logout
231
+ - Forget password
232
+ - Change password
233
+ - Change email
234
+ - OTP verification
235
+ - Email verification
236
+ - SMTP integration
237
+
238
+ ---
239
+
240
+ # Deployment
241
+
242
+ Deployment configurations included:
243
+
244
+ ```bash
245
+ deployment/
246
+ ```
247
+
248
+ Contains:
249
+
250
+ - `gunicorn.service`
251
+ - `gunicorn.socket`
252
+ - `nginx.conf`
253
+
254
+ Suitable for:
255
+
256
+ - Ubuntu Server
257
+ - Nginx
258
+ - Gunicorn
259
+ - Systemd
260
+
261
+ ---
262
+
263
+ # Admin Panel
264
+
265
+ Jazzmin admin panel included.
266
+
267
+ Admin URL:
268
+
269
+ ```txt
270
+ /admin/
271
+ ```
272
+
273
+ ---
274
+
275
+ # API Support
276
+
277
+ Django REST Framework preconfigured.
278
+
279
+ Create APIs inside:
280
+
281
+ ```bash
282
+ src/api/
283
+ ```
284
+
285
+ ---
286
+
287
+ # Static & Media Files
288
+
289
+ Static files:
290
+
291
+ ```bash
292
+ src/static/
293
+ ```
294
+
295
+ Images:
296
+
297
+ ```bash
298
+ src/images/
299
+ ```
300
+
301
+ Templates:
302
+
303
+ ```bash
304
+ src/templates/
305
+ ```
306
+
307
+ ---
308
+
309
+ # Installed Packages
310
+
311
+ Main packages included:
312
+
313
+ - Django
314
+ - Django REST Framework
315
+ - Django Environ
316
+ - Django Jazzmin
317
+ - Gunicorn
318
+
319
+ ---
320
+
321
+ # Production
322
+
323
+ Install production requirements:
324
+
325
+ ```bash
326
+ pip install -r src/requirements/prod.txt
327
+ ```
328
+
329
+ Collect static files:
330
+
331
+ ```bash
332
+ python manage.py collectstatic
333
+ ```
334
+
335
+ ---
336
+
337
+ # Requirements Management
338
+
339
+ Install new package:
340
+
341
+ ```bash
342
+ pip install package_name
343
+ ```
344
+
345
+ Save dependencies:
346
+
347
+ ```bash
348
+ pip freeze > src/requirements/dev.txt
349
+ ```
350
+
351
+ ---
352
+
353
+ # License
354
+
355
+ MIT License
356
+
357
+ ---
358
+
359
+ # Author
360
+
361
+ Ziyodullo Aliyev
362
+
363
+ GitHub:
364
+ https://github.com/Ziyodullodev
365
+
366
+ ---
367
+
368
+ Happy coding 🚀
@@ -0,0 +1,336 @@
1
+ # Ziyodev Django
2
+
3
+ Production-ready Django starter template with authentication system, REST API support, deployment configuration, and scalable project structure.
4
+
5
+ This template is designed for quickly building modern Django applications with clean architecture and reusable components.
6
+
7
+ ---
8
+
9
+ # Features
10
+
11
+ - Django REST Framework
12
+ - Authentication system
13
+ - Login / Register
14
+ - Forget password
15
+ - Change password
16
+ - Change email
17
+ - OTP verification
18
+ - SMTP email integration
19
+ - Environment variables support
20
+ - Jazzmin admin panel
21
+ - Gunicorn configuration
22
+ - Nginx deployment config
23
+ - Modular architecture
24
+ - Ready for production
25
+
26
+ ---
27
+
28
+ # Project Structure
29
+
30
+ ```bash
31
+ project/
32
+ │
33
+ ├── deployment/
34
+ │ ├── gunicorn.service
35
+ │ ├── gunicorn.socket
36
+ │ └── nginx.conf
37
+ │
38
+ ├── src/
39
+ │ ├── api/
40
+ │ ├── apps/
41
+ │ ├── config/
42
+ │ ├── images/
43
+ │ ├── requirements/
44
+ │ ├── static/
45
+ │ ├── templates/
46
+ │ ├── .env
47
+ │ ├── .env.example
48
+ │ ├── db.sqlite3
49
+ │ └── manage.py
50
+ │
51
+ ├── venv/
52
+ ├── .gitignore
53
+ └── README.md
54
+ ```
55
+
56
+ ---
57
+
58
+ # Installation
59
+
60
+ ## 1. Install package
61
+
62
+ ```bash
63
+ pip install ziyodev-django
64
+ ```
65
+
66
+ ---
67
+
68
+ # Create New Project
69
+
70
+ Initialize new Django project:
71
+
72
+ ```bash
73
+ ziyodev-django init myproject
74
+ ```
75
+
76
+ Enter project folder:
77
+
78
+ ```bash
79
+ cd myproject
80
+ ```
81
+
82
+ ---
83
+
84
+ # Virtual Environment
85
+
86
+ ## Linux / macOS
87
+
88
+ Create venv:
89
+
90
+ ```bash
91
+ python3 -m venv venv
92
+ ```
93
+
94
+ Activate:
95
+
96
+ ```bash
97
+ source venv/bin/activate
98
+ ```
99
+
100
+ ---
101
+
102
+ ## Windows
103
+
104
+ Create venv:
105
+
106
+ ```bash
107
+ python -m venv venv
108
+ ```
109
+
110
+ Activate:
111
+
112
+ ```bash
113
+ venv\Scripts\activate
114
+ ```
115
+
116
+ ---
117
+
118
+ # Install Requirements
119
+
120
+ ```bash
121
+ pip install -r src/requirements/dev.txt
122
+ ```
123
+
124
+ ---
125
+
126
+ # Environment Variables
127
+
128
+ Copy `.env.example`:
129
+
130
+ ## Linux / macOS
131
+
132
+ ```bash
133
+ cp src/.env.example src/.env
134
+ ```
135
+
136
+ ## Windows
137
+
138
+ ```bash
139
+ copy src/.env.example src/.env
140
+ ```
141
+
142
+ Example `.env`:
143
+
144
+ ```env
145
+ DEBUG=True
146
+
147
+ SECRET_KEY=your_secret_key
148
+
149
+ ALLOWED_HOSTS=127.0.0.1,localhost
150
+
151
+ EMAIL_HOST=smtp.gmail.com
152
+ EMAIL_PORT=587
153
+ EMAIL_HOST_USER=example@gmail.com
154
+ EMAIL_HOST_PASSWORD=password
155
+
156
+ DATABASE_URL=sqlite:///db.sqlite3
157
+ ```
158
+
159
+ ---
160
+
161
+ # Database
162
+
163
+ Run migrations:
164
+
165
+ ```bash
166
+ cd src
167
+ python manage.py migrate
168
+ ```
169
+
170
+ Create superuser:
171
+
172
+ ```bash
173
+ python manage.py createsuperuser
174
+ ```
175
+
176
+ ---
177
+
178
+ # Run Development Server
179
+
180
+ ```bash
181
+ python manage.py runserver
182
+ ```
183
+
184
+ Server:
185
+
186
+ ```txt
187
+ http://127.0.0.1:8000/
188
+ ```
189
+
190
+ ---
191
+
192
+ # Authentication System
193
+
194
+ Included authentication features:
195
+
196
+ - User registration
197
+ - Login
198
+ - Logout
199
+ - Forget password
200
+ - Change password
201
+ - Change email
202
+ - OTP verification
203
+ - Email verification
204
+ - SMTP integration
205
+
206
+ ---
207
+
208
+ # Deployment
209
+
210
+ Deployment configurations included:
211
+
212
+ ```bash
213
+ deployment/
214
+ ```
215
+
216
+ Contains:
217
+
218
+ - `gunicorn.service`
219
+ - `gunicorn.socket`
220
+ - `nginx.conf`
221
+
222
+ Suitable for:
223
+
224
+ - Ubuntu Server
225
+ - Nginx
226
+ - Gunicorn
227
+ - Systemd
228
+
229
+ ---
230
+
231
+ # Admin Panel
232
+
233
+ Jazzmin admin panel included.
234
+
235
+ Admin URL:
236
+
237
+ ```txt
238
+ /admin/
239
+ ```
240
+
241
+ ---
242
+
243
+ # API Support
244
+
245
+ Django REST Framework preconfigured.
246
+
247
+ Create APIs inside:
248
+
249
+ ```bash
250
+ src/api/
251
+ ```
252
+
253
+ ---
254
+
255
+ # Static & Media Files
256
+
257
+ Static files:
258
+
259
+ ```bash
260
+ src/static/
261
+ ```
262
+
263
+ Images:
264
+
265
+ ```bash
266
+ src/images/
267
+ ```
268
+
269
+ Templates:
270
+
271
+ ```bash
272
+ src/templates/
273
+ ```
274
+
275
+ ---
276
+
277
+ # Installed Packages
278
+
279
+ Main packages included:
280
+
281
+ - Django
282
+ - Django REST Framework
283
+ - Django Environ
284
+ - Django Jazzmin
285
+ - Gunicorn
286
+
287
+ ---
288
+
289
+ # Production
290
+
291
+ Install production requirements:
292
+
293
+ ```bash
294
+ pip install -r src/requirements/prod.txt
295
+ ```
296
+
297
+ Collect static files:
298
+
299
+ ```bash
300
+ python manage.py collectstatic
301
+ ```
302
+
303
+ ---
304
+
305
+ # Requirements Management
306
+
307
+ Install new package:
308
+
309
+ ```bash
310
+ pip install package_name
311
+ ```
312
+
313
+ Save dependencies:
314
+
315
+ ```bash
316
+ pip freeze > src/requirements/dev.txt
317
+ ```
318
+
319
+ ---
320
+
321
+ # License
322
+
323
+ MIT License
324
+
325
+ ---
326
+
327
+ # Author
328
+
329
+ Ziyodullo Aliyev
330
+
331
+ GitHub:
332
+ https://github.com/Ziyodullodev
333
+
334
+ ---
335
+
336
+ Happy coding 🚀