Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

storejson

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

storejson

Easiest way to Store JSON typed data using a Pydantic models and database-like structure.

  • 0.1.1
  • PyPI
  • Socket score

Maintainers
1

StoreJSON

StoreJSON is the easiest way to manage data with JSON. It allows you to store, manipulate, and query objects in table form, similar to a database, but with the simplicity and readability of the JSON format. This project is designed to be as accessible as possible while remaining powerful enough for various use cases.

Why Use StoreJSON?

  • Simplicity: With StoreJSON, working with structured data becomes as simple as manipulating Python objects. No complex configuration is needed. Everything is managed through classes.

  • Performance: The use of typed models via Pydantic. enables efficient data validation while ensuring data integrity.

  • Readability: Storing data in JSON format ensures that your data remains easily readable and modifiable, even without specific tools.

Example Usage

from storejson import Storage, TableObject

# Create a new storage instance using a JSON file
storage = Storage("./mystorage.json")

# Define a data model for the "users" table
class UserModel(TableObject):
    id: int
    username: str

# Add the "users" table to the storage
User = storage.add_table("users", id_key="id", model_class=UserModel)

# Create a new user and add them to the table
user = User(id=1, username="JohnDoe")
user.storage.push()

# Retrieve a user by their ID
retrieved_user = User.get(1)
print(retrieved_user)

# Update a user
retrieved_user.username = "JaneDoe"
retrieved_user.push()

# Delete a user
retrieved_user.remove()

Using Decorators

If you prefer to use decorators for more concise syntax:

# Create a "users" table using a decorator
@storage.table("users", id_key="id")
class User(TableObject):
    id: int
    username: str

# Create and add a user
user = User(id=2, username="Alice")
user.storage.push()

# Retrieve and display the user
print(User.storage.get(2))

Complete Documentation

To view the full documentation of the project, it is recommended to use pdoc.

pip install pdoc
py -m pdoc storejson

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc