# AP Reusable Package

AP-Reusable-Package is a versatile and powerful Python package that contains many useful functions and classes for a wide range of projects. Some of the key features of this package include:

<li><b>Get Client IP:</b> A function that retrieves the IP address of the client making a request to a server. This can be useful for logging and security purposes.</li>
<br>
<li><b>Get Client Host:</b> A function that retrieves the hostname of the client making a request to a server. This can be useful for identifying the origin of a request.</li>
<br>
<li><b>Fernet Encryption/Decryption:</b> A set of functions that provide easy-to-use encryption and decryption functionality using the Fernet encryption algorithm. This can be useful for protecting sensitive data in transit or at rest.</li>
<br>
<li><b>Extended Enumerator:</b> A class that extends the built-in Python Enumerator class, providing additional functionality and convenience methods. This can be useful for working with large sets of data.</li>
<br>
<li><b>Custom Renderer for Rest Framework:</b> A custom renderer that provides additional flexibility and customization options for rendering RESTful API responses. This can be useful for building complex APIs that require a high degree of control over the output format.</li>

Overall, AP-Reusable-Package is a valuable resource for developers working on a wide range of projects. Its many features and convenient classes make it easy to build robust and secure applications quickly and efficiently.

### For updating version

Options are major, minor, patch

```
bumpversion [option] --allow-dirty
```