altcodepro-polydb-python 2.2.3__tar.gz → 2.2.4__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 (86) hide show
  1. altcodepro_polydb_python-2.2.4/PKG-INFO +489 -0
  2. altcodepro_polydb_python-2.2.4/README.md +404 -0
  3. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/pyproject.toml +2 -1
  4. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/requirements.txt +49 -3
  5. altcodepro_polydb_python-2.2.4/src/altcodepro_polydb_python.egg-info/PKG-INFO +489 -0
  6. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/altcodepro_polydb_python.egg-info/SOURCES.txt +4 -0
  7. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/altcodepro_polydb_python.egg-info/requires.txt +4 -0
  8. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/adapters/AzureBlobStorageAdapter.py +52 -11
  9. altcodepro_polydb_python-2.2.4/src/polydb/adapters/BlockchainBlobAdapter.py +111 -0
  10. altcodepro_polydb_python-2.2.4/src/polydb/adapters/BlockchainKVAdapter.py +152 -0
  11. altcodepro_polydb_python-2.2.4/src/polydb/adapters/BlockchainQueueAdapter.py +116 -0
  12. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/adapters/GCPStorageAdapter.py +56 -10
  13. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/adapters/S3Adapter.py +56 -8
  14. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/adapters/S3CompatibleAdapter.py +62 -8
  15. altcodepro_polydb_python-2.2.4/src/polydb/adapters/VercelBlobAdapter.py +196 -0
  16. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/base/ObjectStorageAdapter.py +19 -4
  17. altcodepro_polydb_python-2.2.4/src/polydb/cloudDatabaseFactory.py +200 -0
  18. altcodepro_polydb_python-2.2.4/src/polydb/models.py +101 -0
  19. altcodepro_polydb_python-2.2.4/tests/test_blockchain.py +106 -0
  20. altcodepro_polydb_python-2.2.3/PKG-INFO +0 -380
  21. altcodepro_polydb_python-2.2.3/README.md +0 -298
  22. altcodepro_polydb_python-2.2.3/src/altcodepro_polydb_python.egg-info/PKG-INFO +0 -380
  23. altcodepro_polydb_python-2.2.3/src/polydb/adapters/VercelBlobAdapter.py +0 -161
  24. altcodepro_polydb_python-2.2.3/src/polydb/cloudDatabaseFactory.py +0 -132
  25. altcodepro_polydb_python-2.2.3/src/polydb/models.py +0 -39
  26. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/LICENSE +0 -0
  27. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/MANIFEST.in +0 -0
  28. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/example_usage.py +0 -0
  29. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/requirements-aws.txt +0 -0
  30. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/requirements-azure.txt +0 -0
  31. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/requirements-dev.txt +0 -0
  32. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/requirements-gcp.txt +0 -0
  33. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/requirements-generic.txt +0 -0
  34. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/setup.cfg +0 -0
  35. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/setup.py +0 -0
  36. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/altcodepro_polydb_python.egg-info/dependency_links.txt +0 -0
  37. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/altcodepro_polydb_python.egg-info/top_level.txt +0 -0
  38. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/__init__.py +0 -0
  39. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/adapters/AzureFileStorageAdapter.py +0 -0
  40. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/adapters/AzureQueueAdapter.py +0 -0
  41. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/adapters/AzureTableStorageAdapter.py +0 -0
  42. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/adapters/DynamoDBAdapter.py +0 -0
  43. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/adapters/EFSAdapter.py +0 -0
  44. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/adapters/FirestoreAdapter.py +0 -0
  45. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/adapters/GCPPubSubAdapter.py +0 -0
  46. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/adapters/MongoDBAdapter.py +0 -0
  47. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/adapters/PostgreSQLAdapter.py +0 -0
  48. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/adapters/SQSAdapter.py +0 -0
  49. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/adapters/VercelKVAdapter.py +0 -0
  50. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/adapters/VercelQueueAdapter.py +0 -0
  51. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/adapters/__init__.py +0 -0
  52. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/advanced_query.py +0 -0
  53. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/audit/AuditStorage.py +0 -0
  54. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/audit/__init__.py +0 -0
  55. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/audit/context.py +0 -0
  56. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/audit/manager.py +0 -0
  57. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/audit/models.py +0 -0
  58. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/base/NoSQLKVAdapter.py +0 -0
  59. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/base/QueueAdapter.py +0 -0
  60. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/base/SharedFilesAdapter.py +0 -0
  61. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/base/__init__.py +0 -0
  62. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/batch.py +0 -0
  63. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/cache.py +0 -0
  64. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/databaseFactory.py +0 -0
  65. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/decorators.py +0 -0
  66. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/errors.py +0 -0
  67. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/json_safe.py +0 -0
  68. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/monitoring.py +0 -0
  69. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/multitenancy.py +0 -0
  70. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/py.typed +0 -0
  71. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/query.py +0 -0
  72. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/registry.py +0 -0
  73. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/retry.py +0 -0
  74. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/schema.py +0 -0
  75. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/security.py +0 -0
  76. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/types.py +0 -0
  77. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/utils.py +0 -0
  78. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/src/polydb/validation.py +0 -0
  79. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/tests/test_aws.py +0 -0
  80. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/tests/test_azure.py +0 -0
  81. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/tests/test_cloud_factory.py +0 -0
  82. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/tests/test_gcp.py +0 -0
  83. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/tests/test_mongodb.py +0 -0
  84. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/tests/test_multi_engine.py +0 -0
  85. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/tests/test_postgresql.py +0 -0
  86. {altcodepro_polydb_python-2.2.3 → altcodepro_polydb_python-2.2.4}/tests/test_vercel.py +0 -0
@@ -0,0 +1,489 @@
1
+ Metadata-Version: 2.4
2
+ Name: altcodepro-polydb-python
3
+ Version: 2.2.4
4
+ Summary: Production-ready multi-cloud database abstraction layer with connection pooling, retry logic, and thread safety
5
+ Author: AltCodePro
6
+ Project-URL: Homepage, https://github.com/altcodepro/polydb-python
7
+ Project-URL: Documentation, https://github.com/altcodepro/polydb-python#readme
8
+ Project-URL: Repository, https://github.com/altcodepro/polydb-python
9
+ Project-URL: Bug Tracker, https://github.com/altcodepro/polydb-python/issues
10
+ Keywords: database,cloud,multi-cloud,aws,azure,gcp,abstraction,nosql,sql,postgres,mongodb,dynamodb,s3
11
+ Classifier: Development Status :: 4 - Beta
12
+ Classifier: Intended Audience :: Developers
13
+ Classifier: Topic :: Database
14
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
15
+ Classifier: License :: OSI Approved :: MIT License
16
+ Classifier: Programming Language :: Python :: 3
17
+ Classifier: Programming Language :: Python :: 3.8
18
+ Classifier: Programming Language :: Python :: 3.9
19
+ Classifier: Programming Language :: Python :: 3.10
20
+ Classifier: Programming Language :: Python :: 3.11
21
+ Classifier: Programming Language :: Python :: 3.12
22
+ Classifier: Operating System :: OS Independent
23
+ Requires-Python: >=3.8
24
+ Description-Content-Type: text/markdown
25
+ License-File: LICENSE
26
+ Requires-Dist: psycopg2-binary>=2.9.11
27
+ Requires-Dist: tenacity>=9.1.4
28
+ Requires-Dist: redis>=6.4.0
29
+ Requires-Dist: python-dotenv>=1.1.1
30
+ Provides-Extra: aws
31
+ Requires-Dist: boto3>=1.42.47; extra == "aws"
32
+ Requires-Dist: botocore>=1.42.47; extra == "aws"
33
+ Provides-Extra: azure
34
+ Requires-Dist: azure-core>=1.38.1; extra == "azure"
35
+ Requires-Dist: azure-data-tables>=12.7.0; extra == "azure"
36
+ Requires-Dist: azure-storage-blob>=12.28.0; extra == "azure"
37
+ Requires-Dist: azure-storage-file-share>=12.24.0; extra == "azure"
38
+ Requires-Dist: azure-storage-queue>=12.15.0; extra == "azure"
39
+ Provides-Extra: gcp
40
+ Requires-Dist: google-api-core>=2.29.0; extra == "gcp"
41
+ Requires-Dist: google-auth>=2.48.0; extra == "gcp"
42
+ Requires-Dist: google-cloud-core>=2.5.0; extra == "gcp"
43
+ Requires-Dist: google-cloud-firestore>=2.23.0; extra == "gcp"
44
+ Requires-Dist: google-cloud-pubsub>=2.35.0; extra == "gcp"
45
+ Requires-Dist: google-cloud-storage>=3.9.0; extra == "gcp"
46
+ Provides-Extra: mongodb
47
+ Requires-Dist: pymongo>=4.16.0; extra == "mongodb"
48
+ Provides-Extra: rabbitmq
49
+ Requires-Dist: pika>=1.3.2; extra == "rabbitmq"
50
+ Provides-Extra: vercel
51
+ Requires-Dist: requests>=2.32.5; extra == "vercel"
52
+ Provides-Extra: bolckchain
53
+ Requires-Dist: ipfshttpclient>=0.7.0; extra == "bolckchain"
54
+ Requires-Dist: web3>=7.14.1; extra == "bolckchain"
55
+ Provides-Extra: generic
56
+ Requires-Dist: pymongo>=4.16.0; extra == "generic"
57
+ Requires-Dist: pika>=1.3.2; extra == "generic"
58
+ Requires-Dist: boto3>=1.42.47; extra == "generic"
59
+ Provides-Extra: all
60
+ Requires-Dist: boto3>=1.42.47; extra == "all"
61
+ Requires-Dist: botocore>=1.42.47; extra == "all"
62
+ Requires-Dist: azure-core>=1.38.1; extra == "all"
63
+ Requires-Dist: azure-data-tables>=12.7.0; extra == "all"
64
+ Requires-Dist: azure-storage-blob>=12.28.0; extra == "all"
65
+ Requires-Dist: azure-storage-file-share>=12.24.0; extra == "all"
66
+ Requires-Dist: azure-storage-queue>=12.15.0; extra == "all"
67
+ Requires-Dist: google-cloud-firestore>=2.23.0; extra == "all"
68
+ Requires-Dist: google-cloud-pubsub>=2.35.0; extra == "all"
69
+ Requires-Dist: google-cloud-storage>=3.9.0; extra == "all"
70
+ Requires-Dist: pymongo>=4.16.0; extra == "all"
71
+ Requires-Dist: pika>=1.3.2; extra == "all"
72
+ Requires-Dist: requests>=2.32.5; extra == "all"
73
+ Provides-Extra: dev
74
+ Requires-Dist: black>=26.1.0; extra == "dev"
75
+ Requires-Dist: flake8>=7.3.0; extra == "dev"
76
+ Requires-Dist: isort>=7.0.0; extra == "dev"
77
+ Requires-Dist: mypy>=1.19.1; extra == "dev"
78
+ Provides-Extra: test
79
+ Requires-Dist: pytest>=9.0.2; extra == "test"
80
+ Requires-Dist: pytest-asyncio>=1.2.0; extra == "test"
81
+ Requires-Dist: pytest-cov>=7.0.0; extra == "test"
82
+ Requires-Dist: pytest-mock>=3.15.1; extra == "test"
83
+ Requires-Dist: moto>=5.1.21; extra == "test"
84
+ Dynamic: license-file
85
+
86
+
87
+
88
+ # AltCodePro PolyDB
89
+
90
+ **AltCodePro PolyDB** is a production-ready **multi-cloud database abstraction layer for Python**.
91
+
92
+ It provides a **single unified API** for SQL, NoSQL, object storage, queues, and blockchain storage across major platforms including **AWS, Azure, GCP, Vercel, MongoDB, PostgreSQL, and Web3 networks**.
93
+
94
+ PolyDB enables developers to build **cloud-portable applications** without vendor lock-in.
95
+
96
+ It is designed for modern distributed systems that require:
97
+
98
+ * multi-cloud portability
99
+ * hybrid SQL + NoSQL architectures
100
+ * distributed storage routing
101
+ * event-driven queues
102
+ * object storage abstraction
103
+ * blockchain storage integration
104
+ * enterprise-grade reliability
105
+
106
+ ---
107
+
108
+ # Architecture
109
+
110
+ PolyDB unifies multiple storage layers behind a single API.
111
+
112
+ ```
113
+ PolyDB
114
+
115
+ ┌──────────────┼──────────────┐
116
+ │ │ │
117
+ SQL DB NoSQL KV Queue
118
+ PostgreSQL Dynamo/Azure SQS/PubSub
119
+ │ │ │
120
+ └─────── Object Storage ─────┘
121
+ S3 / Blob
122
+
123
+ Blockchain
124
+ (KV / Blob / Queue)
125
+ ```
126
+
127
+ ---
128
+
129
+ # Project Structure
130
+
131
+ ```
132
+ polydb/
133
+ ├ adapters/
134
+ │ ├ aws/
135
+ │ ├ azure/
136
+ │ ├ gcp/
137
+ │ ├ vercel/
138
+ │ └ blockchain/
139
+
140
+ ├ core/
141
+ │ ├ database_factory.py
142
+ │ ├ query.py
143
+ │ ├ batch.py
144
+
145
+ ├ security/
146
+ ├ monitoring/
147
+ ├ cache/
148
+ └ multitenancy/
149
+ ```
150
+
151
+ ---
152
+
153
+ # Key Features
154
+
155
+ ## Multi-Cloud Support
156
+
157
+ Works across multiple cloud providers with automatic environment detection.
158
+
159
+ | Provider | NoSQL | Object Storage | Queue |
160
+ | ---------- | ----------------- | -------------- | ----------- |
161
+ | AWS | DynamoDB | S3 | SQS |
162
+ | Azure | Table Storage | Blob Storage | Azure Queue |
163
+ | GCP | Firestore | GCS | Pub/Sub |
164
+ | Vercel | KV (Redis) | Blob | Queue |
165
+ | MongoDB | MongoDB | — | — |
166
+ | PostgreSQL | SQL | S3-compatible | — |
167
+ | Blockchain | Smart Contract KV | IPFS | Event Queue |
168
+
169
+ ---
170
+
171
+ # ❤️ Support the Project
172
+
173
+ PolyDB is **free and open source**.
174
+
175
+ If you find this project useful, you can support continued development.
176
+
177
+ ### Sponsor
178
+
179
+ [![Sponsor](https://img.shields.io/badge/Sponsor-AltCodePro-red?logo=githubsponsors)](https://github.com/sponsors)
180
+
181
+ Or support the project through AltCodePro:
182
+
183
+ [https://chatgpt.com/g/g-68d6efde65e0819192b9e130fb56b26b-altcodepro-gpt-idea-to-mvps-investor-docs](https://chatgpt.com/g/g-68d6efde65e0819192b9e130fb56b26b-altcodepro-gpt-idea-to-mvps-investor-docs)
184
+
185
+ Your support helps improve:
186
+
187
+ * multi-cloud database adapters
188
+ * blockchain storage integrations
189
+ * enterprise scalability features
190
+ * developer tooling and documentation
191
+
192
+ ## Hybrid SQL + NoSQL
193
+
194
+ PolyDB allows applications to use **SQL and NoSQL together** without changing code.
195
+
196
+ Example architecture:
197
+
198
+ ```
199
+ Application
200
+
201
+ PolyDB DatabaseFactory
202
+
203
+ ┌──────────────┬──────────────┐
204
+ │ │ │
205
+ SQL NoSQL Storage
206
+ (Postgres) (DynamoDB) (S3)
207
+ ```
208
+
209
+ Example:
210
+
211
+ ```python
212
+ from polydb import DatabaseFactory
213
+
214
+ db = DatabaseFactory()
215
+
216
+ db.create(User, {"name": "Alice"})
217
+ db.read(User, {"email": "alice@email.com"})
218
+ db.update(User, 1, {"status": "active"})
219
+ db.delete(User, 1)
220
+ ```
221
+
222
+ ---
223
+
224
+ ## Automatic Cloud Provider Detection
225
+
226
+ PolyDB automatically detects the cloud provider based on environment variables.
227
+
228
+ | Environment Variable | Provider |
229
+ | ------------------------------- | ---------- |
230
+ | AZURE_STORAGE_CONNECTION_STRING | Azure |
231
+ | AWS_ACCESS_KEY_ID | AWS |
232
+ | GOOGLE_CLOUD_PROJECT | GCP |
233
+ | VERCEL_ENV | Vercel |
234
+ | MONGODB_URI | MongoDB |
235
+ | POSTGRES_URL | PostgreSQL |
236
+
237
+ You can also manually set:
238
+
239
+ ```
240
+ CLOUD_PROVIDER=aws
241
+ ```
242
+
243
+ ---
244
+
245
+ # Object Storage
246
+
247
+ PolyDB provides a unified API for cloud storage systems.
248
+
249
+ Supported backends:
250
+
251
+ * AWS S3
252
+ * Azure Blob Storage
253
+ * Google Cloud Storage
254
+ * Vercel Blob
255
+ * IPFS (Blockchain)
256
+
257
+ Example:
258
+
259
+ ```python
260
+ storage = factory.get_object_storage()
261
+
262
+ storage.upload("file.txt", b"hello world")
263
+ storage.download("file.txt")
264
+ storage.delete("file.txt")
265
+ ```
266
+
267
+ ---
268
+
269
+ # Queue Abstraction
270
+
271
+ PolyDB supports distributed message queues.
272
+
273
+ Supported systems:
274
+
275
+ * AWS SQS
276
+ * Azure Queue
277
+ * Google Pub/Sub
278
+ * Vercel Queue
279
+ * Blockchain event queues
280
+
281
+ Example:
282
+
283
+ ```python
284
+ queue = factory.get_queue()
285
+
286
+ queue.send_message("jobs", {"task": "process"})
287
+ msg = queue.receive_message("jobs")
288
+ queue.delete_message("jobs", msg)
289
+ ```
290
+
291
+ ---
292
+
293
+ # Blockchain Storage
294
+
295
+ PolyDB includes experimental blockchain adapters.
296
+
297
+ Capabilities:
298
+
299
+ * Smart contract key-value storage
300
+ * IPFS blob storage
301
+ * Event-based queue systems
302
+
303
+ Supported networks:
304
+
305
+ * Ethereum
306
+ * Polygon
307
+ * BNB Chain
308
+ * Avalanche
309
+ * Local Ganache
310
+
311
+ Example:
312
+
313
+ ```python
314
+ factory = CloudDatabaseFactory(provider="blockchain")
315
+
316
+ kv = factory.get_nosql_kv()
317
+ blob = factory.get_object_storage()
318
+ queue = factory.get_queue()
319
+ ```
320
+
321
+ ---
322
+
323
+ # Advanced Query Engine
324
+
325
+ PolyDB includes a LINQ-style query builder.
326
+
327
+ Supports:
328
+
329
+ * filtering
330
+ * ordering
331
+ * pagination
332
+ * projections
333
+ * count queries
334
+
335
+ Example:
336
+
337
+ ```python
338
+ qb = QueryBuilder().where("age", Operator.GT, 18)
339
+
340
+ results = db.query_linq(User, qb)
341
+ ```
342
+
343
+ ---
344
+
345
+ # Batch Operations
346
+
347
+ High-performance bulk operations.
348
+
349
+ ```python
350
+ db.batch.bulk_insert(User, users)
351
+
352
+ db.batch.bulk_update(User, updates)
353
+
354
+ db.batch.bulk_delete(User, ids)
355
+ ```
356
+
357
+ ---
358
+
359
+ # Multi-Tenancy
360
+
361
+ PolyDB supports SaaS-style tenant isolation.
362
+
363
+ Isolation strategies:
364
+
365
+ * shared schema
366
+ * separate schema
367
+ * separate database
368
+
369
+ Components:
370
+
371
+ * TenantRegistry
372
+ * TenantContext
373
+ * TenantIsolationEnforcer
374
+
375
+ ---
376
+
377
+ # Caching
378
+
379
+ Built-in distributed caching using Redis.
380
+
381
+ Features:
382
+
383
+ * TTL caching
384
+ * LFU tracking
385
+ * cache warming
386
+ * cache invalidation
387
+
388
+ ---
389
+
390
+ # Monitoring & Observability
391
+
392
+ PolyDB provides built-in metrics collection.
393
+
394
+ Tracks:
395
+
396
+ * query latency
397
+ * slow queries
398
+ * error rates
399
+ * cache hit rates
400
+
401
+ Prometheus export supported.
402
+
403
+ ---
404
+
405
+ # Security
406
+
407
+ PolyDB includes enterprise-grade security features.
408
+
409
+ * field-level encryption
410
+ * row-level security
411
+ * audit logging
412
+ * tenant isolation
413
+ * data masking
414
+
415
+ ---
416
+
417
+ # Installation
418
+
419
+ Install from PyPI:
420
+
421
+ ```
422
+ pip install altcodepro-polydb-python
423
+ ```
424
+
425
+ Optional dependencies:
426
+
427
+ ```
428
+ pip install redis boto3 google-cloud-storage web3 ipfshttpclient
429
+ ```
430
+
431
+ ---
432
+
433
+ # Example
434
+
435
+ ```python
436
+ from polydb import DatabaseFactory, polydb_model
437
+
438
+ @polydb_model
439
+ class User:
440
+ __polydb__ = {
441
+ "storage": "nosql"
442
+ }
443
+
444
+ db = DatabaseFactory()
445
+
446
+ db.create(User, {"name": "Alice"})
447
+ users = db.read(User, {"name": "Alice"})
448
+ ```
449
+
450
+ ---
451
+
452
+ # Why PolyDB
453
+
454
+ PolyDB replaces multiple infrastructure SDKs with one API.
455
+
456
+ | Traditional Approach | PolyDB |
457
+ | ------------------------------ | ----------------------- |
458
+ | Multiple cloud SDKs | One unified API |
459
+ | Provider lock-in | Multi-cloud portability |
460
+ | Separate queue/storage clients | Unified infrastructure |
461
+ | Complex data routing | Automatic routing |
462
+
463
+ ---
464
+
465
+ # Roadmap
466
+
467
+ Planned features:
468
+
469
+ * GraphQL API layer
470
+ * distributed transactions
471
+ * vector database support
472
+ * AI retrieval pipelines
473
+ * edge database adapters
474
+
475
+ ---
476
+
477
+ # License
478
+
479
+ MIT License
480
+
481
+ ---
482
+
483
+ # Links
484
+
485
+ PyPI
486
+ [https://pypi.org/project/altcodepro-polydb-python/](https://pypi.org/project/altcodepro-polydb-python/)
487
+
488
+ Website
489
+ [https://chatgpt.com/g/g-68d6efde65e0819192b9e130fb56b26b-altcodepro-gpt-idea-to-mvps-investor-docs](https://chatgpt.com/g/g-68d6efde65e0819192b9e130fb56b26b-altcodepro-gpt-idea-to-mvps-investor-docs)