Metadata-Version: 2.1
Name: JSONManipulator
Version: 3.0
Summary: A Python package to manipulate objects in JSON files.
Home-page: https://github.com/pandrey2003/JSONManipulator
Author: Andrew Polukhin
Author-email: andrewmathematics2003@gmail.com
License: MIT
Keywords: JSON Objects Manipulation
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Requires-Python: ~=3.8

JSONManipulator
===============

JSONManipulator is a Python package to manipulate objects in JSON files.

Installation
------------

Use the package manager `pip <https://pip.pypa.io/en/stable/>`_ to install JSONManipulator.

.. code-block:: bash

   pip install JSONManipulator

Usage
-----

Firstly, you need to set up your initial JSON file.

.. code-block:: python

   from JSONManipulator import set_up

   set_up(
       full_path="enter/full/path/to/your/file/here"
   )

Functionality
-------------

As soon as you set up your file, you can use classes of the package:

#. **GetInformation** (retrieve information about particular objects in the file).
#. **ChangeValue** (change values of particular objects in the file).
#. **ChangeAllValues** (change values of all objects in the file).
#. **DeleteObject** (delete particular objects in the file).
#. **AddObject** (add a new object to the file).
#. **AddKey** (add a new key to each object in the file).

More detailed information about the usage of the package can be found in the ``examples`` and ``docs`` folders.

Contributing
------------

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

License
-------

`MIT <https://choosealicense.com/licenses/mit/>`_


=======
History
=======

1.0 (2020-07-8)
------------------

* The first release of ``JSONManipulator``.


1.1 (2017-07-12)
------------------

* Added docstrings to the package and the ``examples`` directory.


2.0 (2017-07-12)
------------------

* Made more out-of-the-box functionality of the package.
* Minor optimization of the core module.


3.0 (2017-07-17)
------------------

* Added Pytests.
* Added documentation (using sphinx-documentation).
* Added Tox support.
* Tested code coverage - 92%.
* Enabled Travis CI.
* Resolved 1 bug with the deletion of one book.
* Optimized ``cap_sentence()``, making it non-static.
* Shortened the relevant lines of code by applying the knowledge of the copy function.
* Deployed ``__slots__``, saving RAM when using the package.



