Skip to content

Conversation

DmitriyAlergant
Copy link
Contributor

This PR adds LocalStorageClient supporting local filesystem storage, and a new /storage/file API route to allow files serving via ChainLit backend itself, since local storage cannot provide a pre-signed URL for direct files downloads.

Problem statement: persistence requires a storage provider. But a dependency on Cloud Storage introduces complexity for fully local deployments (e.g. docker) that is not already in AWS/Azure/GCS. Yes, MinIO exists and can be co-deployed and used with S3 storage provider, but it adds substantial complexity to the deployment; Not only for MinIO itself but also for reverse proxying scenarios (ingress), etc. It's not the same level of complexity as having a Postgre database that's trivial.

Basic files upload and download capability can be well handled by ChainLit itself.

@dosubot dosubot bot added size:XL This PR changes 500-999 lines, ignoring generated files. backend Pertains to the Python backend. labels Sep 4, 2025
@dosubot dosubot bot added size:XXL This PR changes 1000+ lines, ignoring generated files. and removed size:XL This PR changes 500-999 lines, ignoring generated files. labels Sep 22, 2025
@DmitriyAlergant DmitriyAlergant force-pushed the feat/local_storage_client branch from 14fc85b to 6557758 Compare September 22, 2025 17:04
@dosubot dosubot bot added size:XL This PR changes 500-999 lines, ignoring generated files. and removed size:XXL This PR changes 1000+ lines, ignoring generated files. labels Sep 22, 2025
@DmitriyAlergant
Copy link
Contributor Author

Now passes all tests and linting. Commits re-squashed into a single commit.

@DmitriyAlergant
Copy link
Contributor Author

@asvishnyakov @hayescode thoughts?

Copy link

github-actions bot commented Oct 7, 2025

This PR is stale because it has been open for 14 days with no activity.

@github-actions github-actions bot added the stale Issue has not had recent activity or appears to be solved. Stale issues will be automatically closed label Oct 7, 2025
@asvishnyakov asvishnyakov added the enhancement New feature or request label Oct 7, 2025
@asvishnyakov
Copy link
Member

Leave it for a while

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backend Pertains to the Python backend. enhancement New feature or request size:XL This PR changes 500-999 lines, ignoring generated files. stale Issue has not had recent activity or appears to be solved. Stale issues will be automatically closed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants