Various utilties to enhance your projects
Project description
Zenif
Zenif (pronounced "Zenith") is a powerful and versatile Python module designed to enhance the efficiency and performance of your programs. Whether you're a seasoned developer or just starting out, Zenif offers a suite of tools to streamline your workflow and improve code management. Zenif currently enables developers with a simple yet highly customizable logger with support for multiple streams, a set of utility decorators, like @cache
and @rate_limiter
, a handful of tools to create a command-line interface with interactive prompts and argument handling, and easy-to-use schemas to validate your user's inputs.
Installation
Zenif requires Python 3.12 or higher. To install the latest version, install with pip
or your favorite PyPi package manager.
pip install zenif
This command will download and install Zenif along with its dependencies.
Documentation
Modules
- CLI: Create command line interfaces and interactive prompts
- Log: Enhance your debugging game with a highly customizable logger
- Decorators: Give your functions extra functionality on the fly
- Schema: Validate your user's inputs with intuitive syntax
Other
- Changelog: View new features, breaking changes, and more between updates
Contributing
Contributions to Zenif are welcome! Whether you're fixing bugs, improving documentation, or proposing new features, your efforts are appreciated. Here's how you can contribute:
-
Fork & Clone the Repository: Start by forking the Zenif repository on GitHub. Clone your fork to your local machine for development.
git clone https://github.com/DomBom16/zenif.git
-
Create a Branch: Create a new branch for your feature or bug fix.
git checkout -b feature/your-feature-name
-
Make Your Changes & Test: Implement your feature or bug fix. Be sure to test it before continuing.
-
Update Documentation: If your changes require it, update the README and any relevant documentation.
-
Commit Your Changes: Commit your changes with a clear and descriptive commit message.
git commit -m "Add feature: your feature description"
-
Push to Your Fork: Push your changes to your fork on GitHub.
git push origin feature/your-feature-name
-
Create a Pull Request: Go to the Zenif repository on GitHub and create a new pull request from your feature branch.
Please ensure your code adheres to the project's coding standards and includes appropriate documentation. We appreciate your contribution!
Testing
Zenif uses unittest for its test suite. We encourage contributors to write tests for new features and bug fixes. The zenif/tests/decorators/test1.py
provides a good example of how to structure tests.
Versioning
Zenif follows Semantic Versioning. The version number is structured as MAJOR.MINOR.PATCH:
- MAJOR version increments denote incompatible API changes,
- MINOR version increments add functionality in a backwards-compatible manner, and
- PATCH version increments are for backwards-compatible bug fixes.
License
Zenif is released under the MIT License. See the LICENSE file for more details.
Support
If you encounter any issues or have questions about using Zenif, please file an issue on the GitHub issue tracker.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file zenif-0.2.0.tar.gz
.
File metadata
- Download URL: zenif-0.2.0.tar.gz
- Upload date:
- Size: 32.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c1acf3746bca1e3d01140ef88c01e29ed5092f4555f15ea8150e3d26865ac8df |
|
MD5 | 484c4857697885d02b1a82beb87499cb |
|
BLAKE2b-256 | 4ff3e5d9f268bfa09b1399e90b96a28b7244f046bbcf69145ae3340192f8cf0c |
File details
Details for the file zenif-0.2.0-py3-none-any.whl
.
File metadata
- Download URL: zenif-0.2.0-py3-none-any.whl
- Upload date:
- Size: 37.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 119920880c554f65761e801388a18ef92641f01128b42f47873eedcf3d5014a0 |
|
MD5 | b295d1b33e6754ebbba14e4786120dfe |
|
BLAKE2b-256 | 11fb8bf0ecc4c084ace096a4d37bb47612e025c77a42790009fe012f47044ee2 |