Skip to main content

Lightweight file storage service

Project description

Lightweight File Storage Service (LFSS)

PyPI

My experiment on a lightweight file/object storage service.
It stores small files and metadata in sqlite, large files in the filesystem, and serves them through a simple REST API.
Tested on 2 million files, and it works fine... thanks to the sqlite database!

Usage:

pip install lfss
lfss-user add <username> <password>
lfss-serve

By default, the data will be stored in .storage_data. You can change storage directory using the LFSS_DATA environment variable.

I provide a simple client to interact with the service:

lfss-panel --open

Or, you can start a web server at /frontend and open index.html in your browser.

The API usage is simple, just GET, PUT, DELETE to the /<username>/file/url path.
Authentication is done via Authorization header with the value Bearer <token>, or through the token query parameter.
You can refer to frontend as an application example, and frontend/api.js or lfss/client/api.py for the API usage.

By default, the service exposes all files to the public for GET requests, but file-listing is restricted to the user's own files.
Please refer to docs/Permission.md for more details on the permission system.

Project details


Release history Release notifications | RSS feed

This version

0.7.2

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lfss-0.7.2.tar.gz (32.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lfss-0.7.2-py3-none-any.whl (40.2 kB view details)

Uploaded Python 3

File details

Details for the file lfss-0.7.2.tar.gz.

File metadata

  • Download URL: lfss-0.7.2.tar.gz
  • Upload date:
  • Size: 32.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.10.5

File hashes

Hashes for lfss-0.7.2.tar.gz
Algorithm Hash digest
SHA256 94aa0dc34d209d5351442b47a05388ca2230fd7f4005a08c6db6a647e477eef6
MD5 13df0f1cb7a4c234be0682fad5ed78ee
BLAKE2b-256 b440b6629d8bde218098a1d72b0660d3e6674b17d2eb7ecbce812849e1c92a5b

See more details on using hashes here.

File details

Details for the file lfss-0.7.2-py3-none-any.whl.

File metadata

  • Download URL: lfss-0.7.2-py3-none-any.whl
  • Upload date:
  • Size: 40.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.10.5

File hashes

Hashes for lfss-0.7.2-py3-none-any.whl
Algorithm Hash digest
SHA256 6153240d8e3921e979a90b54568889f8e8aa0b8cc46de0395285110f6c67c428
MD5 ee7bc1a84e895a86dbb966eaa8815f7a
BLAKE2b-256 e87bbe72870193c8f7554442eda312fb9954c90ab44aab118747fbf0a24c1df1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page