Skip to content

ASON: Adaptive Structured Object Notation - Python library for dynamic data serialization, providing flexibility and simplicity.

License

Notifications You must be signed in to change notification settings

FiazTechnologies/ason

 
 

Repository files navigation

ASON: Adaptive Structure Object Notation


Run Tests PyPI Version Python Versions Downloads Last Commit GitHub Issues GitHub Stars GitHub Forks

Maintainer Sponsor on GitHub License Stability

ASON is a Python library designed for adaptive data serialization. It seamlessly handles various data structures, offering flexibility and simplicity inspired by JSON.

This Project is Still in active Development so not ready for production yet

Installation

pip install ason

Usage

from ason import ason

# Create an Ason object
data = '{"name": "${name}", "age": ${age}, "city": "${city}", "hobbies": ["${hobby1}", "${hobby2}"]}'
ason_data = ason.loads(data)

# Set values for variables
ason_data.set("name", "John")
ason_data.set("age", 30)
ason_data.set("city", "New York")
ason_data.set("hobby1", "Reading")
ason_data.set("hobby2", "Coding")

# Print the result after setting variables
result_after_set = ason_data.dumps()
print("Result after setting variables:")
print(result_after_set)
print()

# Replace a key dynamically
ason_data.replace("age", "new_age", 25)

# Append a value to the 'hobbies' list
ason_data.append("hobbies", "Gardening")

# Print the result after replacing and appending
result_after_modify = ason_data.dumps()
print("Result after replacing and appending:")
print(result_after_modify)
print()

# Get the value associated with a key
city_value = ason_data.get("city")
print("Value for key 'city':", city_value)
print()

# Accessing values using square bracket notation
name_value = ason_data["name"]
print("Value for key 'name' using square bracket notation:", name_value)
print()

# Set a value using square bracket notation
ason_data["new_key"] = "new_value"
print("Result after setting a value using square bracket notation:")
print(ason_data.dumps())

This example demonstrates how to create an Ason object, load data, set values for variables, and then dump the result. The output will be a dictionary with the replaced values:

Result after setting variables:

{"name": "John", "age": "30", "city": "New York", "hobbies": ["${hobby1}", "${hobby2}"]}

Result after replacing and appending:

{"name": "John", "new_age": 25, "city": "New York", "hobbies": ["${hobby1}", "${hobby2}", "Gardening"]}

Value for key 'city': New York

Value for key 'name' using square bracket notation: John

Result after setting a value using square bracket notation:

{"name": "John", "new_age": 25, "city": "New York", "hobbies": ["${hobby1}", "${hobby2}", "Gardening"], "new_key": "new_value"}

Contributing

Contributions are welcome! Before contributing, please read our Contributing Guidelines to ensure a smooth and collaborative development process.

Code of Conduct

Please review our Code of Conduct to understand the standards of behavior we expect from contributors and users of this project.

License

This project is licensed under the Apache 2.0 License. See LICENSE for more details.

Support the Project


💰 You can help me improve more by offering a little support on any platform❤️

BuyMeACoffee Patreon Ko-Fi Sponsor muhammad-fiaz Open Collective Backer

Happy Coding ❤️

About

ASON: Adaptive Structured Object Notation - Python library for dynamic data serialization, providing flexibility and simplicity.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%