# Dreamlake Python SDK
A simple and flexible Python SDK for ML experiment tracking and data storage.
## Features
- **Three Usage Styles**: Decorator, context manager, or direct instantiation
- **Dual Operation Modes**: Remote (API server) or local (filesystem)
- **Auto-creation**: Automatically creates namespace, workspace, and folder hierarchy
- **Upsert Behavior**: Updates existing sessions or creates new ones
- **Simple API**: Minimal configuration, maximum flexibility
## Installation
<table>
<tr>
<td>Using uv (recommended)</td>
<td>Using pip</td>
</tr>
<tr>
<td>
```bash
uv add dreamlake
```
</td>
<td>
```bash
pip install dreamlake
```
</td>
</tr>
</table>
## Quick Start
### Remote Mode (with API Server)
```python
from dreamlake import Session
with Session(
name="my-experiment",
workspace="my-workspace",
remote="http://localhost:3000",
api_key="your-jwt-token"
) as session:
print(f"Session ID: {session.id}")
```
### Local Mode (Filesystem)
```python
from dreamlake import Session
with Session(
name="my-experiment",
workspace="my-workspace",
local_path=".dreamlake"
) as session:
pass # Your code here
```
See [examples/](examples/) for more complete examples.
## Development Setup
### Installing Dev Dependencies
To contribute to Dreamlake or run tests, install the development dependencies:
<table>
<tr>
<td>Using uv (recommended)</td>
<td>Using pip</td>
</tr>
<tr>
<td>
```bash
uv sync --extra dev
```
</td>
<td>
```bash
pip install -e ".[dev]"
```
</td>
</tr>
</table>
This installs:
- `pytest>=8.0.0` - Testing framework
- `pytest-asyncio>=0.23.0` - Async test support
### Running Tests
<table>
<tr>
<td>Using uv</td>
<td>Using pytest directly</td>
</tr>
<tr>
<td>
```bash
uv run pytest
```
</td>
<td>
```bash
pytest
```
</td>
</tr>
</table>
For maintainers, to build and publish a new release: `uv build && uv publish`
Raw data
{
"_id": null,
"home_page": null,
"name": "dreamlake",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "machine-learning, experiment-tracking, mlops, data-storage",
"author": "Ge Yang, Tom Tao",
"author_email": "Ge Yang <ge@vuer.ai>, Tom Tao <tom@vuer.ai>",
"download_url": "https://files.pythonhosted.org/packages/21/54/13f9ecf148bd66b24e4c8fd7d6b1636a9bac40fea7f56c36bd8fe565360d/dreamlake-0.2.1.tar.gz",
"platform": null,
"description": "# Dreamlake Python SDK\n\nA simple and flexible Python SDK for ML experiment tracking and data storage.\n\n## Features\n\n- **Three Usage Styles**: Decorator, context manager, or direct instantiation\n- **Dual Operation Modes**: Remote (API server) or local (filesystem)\n- **Auto-creation**: Automatically creates namespace, workspace, and folder hierarchy\n- **Upsert Behavior**: Updates existing sessions or creates new ones\n- **Simple API**: Minimal configuration, maximum flexibility\n\n## Installation\n\n<table>\n<tr>\n<td>Using uv (recommended)</td>\n<td>Using pip</td>\n</tr>\n<tr>\n<td>\n\n```bash\nuv add dreamlake\n```\n\n</td>\n<td>\n\n```bash\npip install dreamlake\n```\n\n</td>\n</tr>\n</table>\n\n## Quick Start\n\n### Remote Mode (with API Server)\n\n```python\nfrom dreamlake import Session\n\nwith Session(\n name=\"my-experiment\",\n workspace=\"my-workspace\",\n remote=\"http://localhost:3000\",\n api_key=\"your-jwt-token\"\n) as session:\n print(f\"Session ID: {session.id}\")\n```\n\n### Local Mode (Filesystem)\n\n```python\nfrom dreamlake import Session\n\nwith Session(\n name=\"my-experiment\",\n workspace=\"my-workspace\",\n local_path=\".dreamlake\"\n) as session:\n pass # Your code here\n```\n\nSee [examples/](examples/) for more complete examples.\n\n## Development Setup\n\n### Installing Dev Dependencies\n\nTo contribute to Dreamlake or run tests, install the development dependencies:\n\n<table>\n<tr>\n<td>Using uv (recommended)</td>\n<td>Using pip</td>\n</tr>\n<tr>\n<td>\n\n```bash\nuv sync --extra dev\n```\n\n</td>\n<td>\n\n```bash\npip install -e \".[dev]\"\n```\n\n</td>\n</tr>\n</table>\n\nThis installs:\n- `pytest>=8.0.0` - Testing framework\n- `pytest-asyncio>=0.23.0` - Async test support\n\n### Running Tests\n\n<table>\n<tr>\n<td>Using uv</td>\n<td>Using pytest directly</td>\n</tr>\n<tr>\n<td>\n\n```bash\nuv run pytest\n```\n\n</td>\n<td>\n\n```bash\npytest\n```\n\n</td>\n</tr>\n</table>\n\nFor maintainers, to build and publish a new release: `uv build && uv publish`\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Python SDK for dreamlake - ML experiment tracking and data storage",
"version": "0.2.1",
"project_urls": null,
"split_keywords": [
"machine-learning",
" experiment-tracking",
" mlops",
" data-storage"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "a5001e0eea5126b1e829ce191419015355bb43364a28bf98d1fd6bf9b163947c",
"md5": "42d3dffa9ed0df37d47fda97817193d1",
"sha256": "749ce511d9836c3806c1633602febfaffb1f278d5e87913cf4c7c5c03ef90800"
},
"downloads": -1,
"filename": "dreamlake-0.2.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "42d3dffa9ed0df37d47fda97817193d1",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 24597,
"upload_time": "2025-10-27T08:27:52",
"upload_time_iso_8601": "2025-10-27T08:27:52.294671Z",
"url": "https://files.pythonhosted.org/packages/a5/00/1e0eea5126b1e829ce191419015355bb43364a28bf98d1fd6bf9b163947c/dreamlake-0.2.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "215413f9ecf148bd66b24e4c8fd7d6b1636a9bac40fea7f56c36bd8fe565360d",
"md5": "c81d0b9aff667576365e75f55fde5486",
"sha256": "87153335c963afef31bfea4ddef5905da9b1bc589bd803cfbc69b1987d1d4ce4"
},
"downloads": -1,
"filename": "dreamlake-0.2.1.tar.gz",
"has_sig": false,
"md5_digest": "c81d0b9aff667576365e75f55fde5486",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 19214,
"upload_time": "2025-10-27T08:27:53",
"upload_time_iso_8601": "2025-10-27T08:27:53.875760Z",
"url": "https://files.pythonhosted.org/packages/21/54/13f9ecf148bd66b24e4c8fd7d6b1636a9bac40fea7f56c36bd8fe565360d/dreamlake-0.2.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-10-27 08:27:53",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "dreamlake"
}