Skip to main content

A client package for FireFlyDB

Project description

FireflyDB Python Client

A Python client library for the FireflyDB database.

Features

  • Connect to FireflyDB servers
  • String operations (get, set, delete)
  • List operations (push, pop, range)
  • Hash operations (hget, hset, hdel)
  • Comprehensive error handling
  • Logging support

Installation

Prerequisites

  • Python 3.13 or higher
  • FireflyDB server

Building from Source

  1. Clone the repository:

    git clone https://gitea.innovativedevsolutions.org/IDSolutions/firefly.git
    cd firefly/ifireflylib
    
  2. Run the build script:

    python build.py
    

    This will:

    • Check for the native library
    • Build the Python package
    • Optionally install the package in development mode

Installing with pip

pip install ifireflylib

Usage

from ifireflylib import IFireflyClient

# Create a client
client = IFireflyClient(host="localhost", port=6379, password="xyz123")

# Test the connection
if client.ping():
    print("Connected to Firefly server")
    
    # String operations
    client.string_ops.string_set("greeting", "Hello, Firefly!")
    value = client.string_ops.string_get("greeting")
    print(f"Got 'greeting': {value}")
    
    # List operations
    client.list_ops.list_right_push("fruits", "apple")
    client.list_ops.list_right_push("fruits", "banana")
    fruits = client.list_ops.list_range("fruits", 0, -1)
    print(f"List 'fruits': {fruits}")
    
    # Hash operations
    client.hash_ops.hash_set("user:1", "name", "John Doe")
    name = client.hash_ops.hash_get("user:1", "name")
    print(f"Got 'user:1.name': {name}")
    
    # Clean up
    client.string_ops.delete("greeting")
    client.string_ops.delete("fruits")
    client.string_ops.delete("user:1")
    
    # Close the connection
    client.close()

License

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 Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

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

ifireflylib-0.2.6-py3-none-any.whl (2.4 MB view details)

Uploaded Python 3

File details

Details for the file ifireflylib-0.2.6-py3-none-any.whl.

File metadata

  • Download URL: ifireflylib-0.2.6-py3-none-any.whl
  • Upload date:
  • Size: 2.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for ifireflylib-0.2.6-py3-none-any.whl
Algorithm Hash digest
SHA256 4ca8a2498bdf9783d3e6e95673f714fec3888a67893a9e5b1770c25b15df7522
MD5 6317288fdc7741fea31165fb583bf9f5
BLAKE2b-256 dd51a354628a0325c7661840397de807af40dd1e56929ca1b6a587147c878220

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