Skip to main content

A simple way to interact with local and remote file systems. Easily extendable to support custom endpoints.

Project description

Copyright (c) 2025 Sean Yeatts, Inc. All rights reserved.

A simple way to interact with local and remote file systems. Easily extendable to support custom endpoints.

Key Features

  • High level methods provide intuitive ways to move, copy, and delete files / folders with minimal code.

  • Low level methods provide injection points for middleman services ( ex. data encryption ).

  • Hook into data streams to monitor progress; useful for GUI apps that incorporate progress bars.

Quickstart

Key import statements :

from swiftstorage import Storage

Example - a simple script that transfers a file between two directories on the user’s local machine :

# IMPORTS
from swiftstorage import Storage


# MOCKUP FUNCTIONS
def update_progress_bar(progress: float) -> None:
    """Mockup progress bar."""
    print(f"progress: {progress}%")


# MAIN DEFINITION
def main() -> None:

    # [1] Prepare datastores using basic paths
    source      = Storage(fr"cache\folder-1")
    destination = Storage(fr"cache\folder-2")

    # [2] ( OPTIONAL ) Hook into data stream to monitor transfer progress
    source.stream.progress.connect(update_progress_bar)

    # [3] Perform a simple copy ( + rename ) operation
    file    = "test-video.mp4"
    renamed = "test-video-copy.mp4"
    source.copy(file, destination, renamed, overwrite=True)


# ENTRY POINT
if __name__ == "__main__":
    main()

Installation

Prerequisites:

  • Python 3.8 or higher is recommended

  • pip 24.0 or higher is recommended

For a pip installation:

Open a new Command Prompt. Run the following command:

py -m pip install swiftstorage

For a local installation:

Extract the contents of this module to a safe location. Open a new terminal and navigate to the top level directory of your project. Run the following command:

py -m pip install "DIRECTORY_HERE\swiftstorage\dist\swiftstorage-1.0.0.tar.gz"
  • DIRECTORY_HERE should be replaced with the complete filepath to the folder where you saved the SwiftStorage module contents.

  • Depending on the release of SwiftStorage you’ve chosen, you may have to change 1.0.0 to reflect your specific version.

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

swiftstorage-0.3.0.tar.gz (6.6 kB view details)

Uploaded Source

Built Distribution

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

swiftstorage-0.3.0-py3-none-any.whl (7.9 kB view details)

Uploaded Python 3

File details

Details for the file swiftstorage-0.3.0.tar.gz.

File metadata

  • Download URL: swiftstorage-0.3.0.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.0

File hashes

Hashes for swiftstorage-0.3.0.tar.gz
Algorithm Hash digest
SHA256 da5bfb02862bc7358292b649d1275e4f9cecacaff417a201e044680c54e0f533
MD5 0e77a370631bfc961de57942d409a28d
BLAKE2b-256 446aa34f64ec27b04f8b661dddcb6529f7617ad1b6e1b5d53eaf29f499d50b1a

See more details on using hashes here.

File details

Details for the file swiftstorage-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: swiftstorage-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 7.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.0

File hashes

Hashes for swiftstorage-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9973a66f8c3ee79ff08429a2ea96aa8fb1dc02601f72045575fbfb597641a248
MD5 439a08c8a76baf475d96c470bbb7d347
BLAKE2b-256 aea4868d36e2e5720ff47e000fd0bc3cd5e542b3fd0edc986bfaeb177f57e1e1

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