Skip to main content

Open-source Reactive Python database

Project description

Skypy Skypy

Skypy - open-source reactive database.
The better way to build Python logging system!

License | Download | Docs

pip install skypydb # python client
# or download from the source
# git clone https://github.com/Ahen-Studio/skypy-db.git
# cd skypy-db
# pip install -r requirements.txt

Features

  • Simple: fully-documented

  • Table: create, update, delete data from a table

  • Observable: Dashboard with real-time data, metrics, and query inspection

  • Free & Open Source: MIT Licensed

TODO

  • code the database backend
  • Create the dashboard using Reflex
  • write the documentation
  • improve user data security
  • code a custom cli

What's next!

  • create a declarative schema system to customize the tables

  • Add the ability to delete specific data in a table

  • Add the ability to update specific data in a table

API

import skypydb

# setup skypydb client.
client = skypydb.Client(path="./data/skypy.db")

# config to make custom table.
config = {
    "all-my-documents": {
        "title": "str",
        "user_id": str,
        "content": str,
        "id": "auto"
    },
    "all-my-documents1": {
        "title": "str",
        "user_id": str,
        "content": str,
        "id": "auto"
    },
    "all-my-documents2": {
        "title": "str",
        "user_id": str,
        "content": str,
        "id": "auto"
    },
}

# Create tables. get_table_from_config(config, table_name="all-my-documents"), delete_table_from_config(config, table_name="all-my-documents") are also available.
table = client.create_table_from_config(config)# Create all the tables present in the config.
#table = client.get_table_from_config(config, table_name="all-my-documents")
#table = client.delete_table_from_config(config, table_name="all-my-documents")

# Add data to a table.

# Retrieve the table before adding any data.
table = client.get_table_from_config(config, table_name="all-my-documents")

table.add(
    title=["document"],
    user_id=["user123"],
    content=["this is a document"],
    id=["auto"]# ids are automatically created by the backend.
)

# Search results. You can also search the data by the id of the document.
results = table.search(
    index="user123",
    title=["document"]# Search the corresponding data by their title.
    #id=["***"]
)

Learn more on our Docs

License

MIT

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

skypydb-0.1.0.tar.gz (12.2 kB view details)

Uploaded Source

Built Distribution

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

skypydb-0.1.0-py3-none-any.whl (13.9 kB view details)

Uploaded Python 3

File details

Details for the file skypydb-0.1.0.tar.gz.

File metadata

  • Download URL: skypydb-0.1.0.tar.gz
  • Upload date:
  • Size: 12.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for skypydb-0.1.0.tar.gz
Algorithm Hash digest
SHA256 c76368c400493d008cb6f4c5d2942d019312c0db3cd59abc09f7843b27ea0e04
MD5 06e87e9c0d20c6f98cae50b5066dd491
BLAKE2b-256 3bfd1a6ce36479037c62cb6852d9012e6f027a453130029bb2a06b0161e55db2

See more details on using hashes here.

Provenance

The following attestation bundles were made for skypydb-0.1.0.tar.gz:

Publisher: python-publish.yml on Ahen-Studio/skypy-db

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file skypydb-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: skypydb-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 13.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for skypydb-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 54ffdb4b46f5e1183f8ba2558fc02f94c8e6a0b0d02f468f96aa873064017bd5
MD5 dc835832b00cb3affa4968537e574355
BLAKE2b-256 c48d661edfeaa48ef85bf75f180523d9894182b0475aaa6145c1c56a39a12692

See more details on using hashes here.

Provenance

The following attestation bundles were made for skypydb-0.1.0-py3-none-any.whl:

Publisher: python-publish.yml on Ahen-Studio/skypy-db

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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