Skip to content

Commit 2db61f3

Browse files
committed
add webdav routes for file upload/download
Signed-off-by: phernandez <paul@basicmachines.co>
1 parent 0499319 commit 2db61f3

7 files changed

Lines changed: 1076 additions & 3 deletions

File tree

justfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ lint:
2323
uv run ruff check . --fix
2424

2525
# Type check code
26-
type-check:
26+
typecheck:
2727
uv run pyright
2828

2929
# Clean build artifacts and cache files
@@ -55,7 +55,7 @@ update-deps:
5555
uv sync --upgrade
5656

5757
# Run all code quality checks and tests
58-
check: lint format type-check test
58+
check: lint format typecheck test
5959

6060
# Generate Alembic migration with descriptive message
6161
migration message:

pyproject.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ dependencies = [
3434
"pyjwt>=2.10.1",
3535
"python-dotenv>=1.1.0",
3636
"pytest-aio>=1.9.0",
37+
"aiofiles>=24.1.0", # Async file I/O
3738
]
3839

3940

src/basic_memory/api/app.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
resource,
2020
search,
2121
prompt_router,
22+
webdav,
2223
)
2324
from basic_memory.config import ConfigManager
2425
from basic_memory.services.initialization import initialize_app, initialize_file_sync
@@ -70,6 +71,7 @@ async def lifespan(app: FastAPI): # pragma: no cover
7071
app.include_router(directory_router.router, prefix="/{project}")
7172
app.include_router(prompt_router.router, prefix="/{project}")
7273
app.include_router(importer_router.router, prefix="/{project}")
74+
app.include_router(webdav.router, prefix="/{project}")
7375

7476
# Project resource router works accross projects
7577
app.include_router(project.project_resource_router)

src/basic_memory/api/routers/__init__.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,6 @@
77
from . import resource_router as resource
88
from . import search_router as search
99
from . import prompt_router as prompt
10+
from . import webdav_router as webdav
1011

11-
__all__ = ["knowledge", "management", "memory", "project", "resource", "search", "prompt"]
12+
__all__ = ["knowledge", "management", "memory", "project", "resource", "search", "prompt", "webdav"]

0 commit comments

Comments
 (0)