Skip to main content

Manage files in bulk quantity using a friendly dict-like interface

Project description

File-Storehouse

Test and build python Code style: black

Main Features

File-Storehouse is a lightweight Python package that aims to facilitate the management of files in bulk quantity.

There are four key points that are combined to achieving such a goal:

  • Mapping Interface - The file managers are leveraged by the Mapping and MutableMapping interfaces, which means that everything can be done using a friendly dict-like interface. For instance:

    # Store data to a file:
    file_manager[id] = file_content
    # Retrine data from a file
    file_content = file_manager[id]
    # Delete a file
    del file_manager[id]
    # Loop through all files
    for id, content in file_manager.items():
        pass
    # and many more...
    
  • Engine - Choose the engine (or back-end) your file managers are connected to:

    • S3 buckets, powered by boto3;
    • Local filesystem and more are planned.
  • Key Mapping - Customize a two-way key mapping between the dict-like keys and the files' location at the engines according to the business rules of your application.

  • Transformations - Configure a chained operation to convert the files back and forward between your Python code and the storage. The supported operations are:

    • Encode/decode bytes and strings;
    • Dump/load Json files;
    • Compress/decompress tarballs and more transformations are planned.

Example

Please, take a look at the user story used for testing.

Copyright and License

© 2022 Felipe N. Schuch. All content is under MIT License.

Project details


Download files

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

Source Distribution

file-storehouse-0.3.2.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

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

file_storehouse-0.3.2-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

Details for the file file-storehouse-0.3.2.tar.gz.

File metadata

  • Download URL: file-storehouse-0.3.2.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.14 CPython/3.8.10 Linux/5.15.0-1014-azure

File hashes

Hashes for file-storehouse-0.3.2.tar.gz
Algorithm Hash digest
SHA256 0d0fd0eb705934d2918895c07b7acc39caac4ad98704eeaebfd754cf7a608a30
MD5 802e081da5d6d1eebe308b0625c1bb15
BLAKE2b-256 f4246ba65bae8d33c62cd56d0c613071e5d1df988408aef53e17613a75e36655

See more details on using hashes here.

File details

Details for the file file_storehouse-0.3.2-py3-none-any.whl.

File metadata

  • Download URL: file_storehouse-0.3.2-py3-none-any.whl
  • Upload date:
  • Size: 11.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.14 CPython/3.8.10 Linux/5.15.0-1014-azure

File hashes

Hashes for file_storehouse-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 4c15376993b38772682996f13094571036906260f90232f9cd642f6018927514
MD5 9105e83881e2ffc9993576bda2291fe4
BLAKE2b-256 9c5eff63c548f6eb1469fdc47b5eaa174b2c181f07c504e4038e8873e360fab6

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