Skip to main content

General Purpose Python Library

Project description

joatmon (jack of all trades, master of none)

Documentation Status PyPI version codecov GitHub Pylint Build Release

Welcome to the Joatmon repository! Here you'll find a collection of codes and scripts I've written over the past 6 years, spanning a wide range of topics and applications. This repository truly lives up to its name – a jack of all trades.

The Joatmon repository is a testament to my journey and exploration in the world of programming and technology. As such, it might not represent best practices, and some parts might be outdated. Use the resources here as a reference or a starting point for your projects, but always exercise due diligence and consider best practices for your specific use case.

Disclaimer

Please exercise caution when using the scripts and modules in this repository. While I've put in a lot of effort to create these resources, they might contain bugs, glitches, or unforeseen issues. It's essential to thoroughly review and test any code you intend to use in your projects. I strongly recommend not using these scripts in production environments without proper testing and validation.

Table of Contents

About the Repository
Usage
Contributing
Installation
Examples
How to run the tests
License
Disclaimer

About the Repository

This repository is a testament to my journey over the years as I've dabbled in various domains of programming and technology. You'll find scripts, modules, and projects covering a wide spectrum, including:

Automation: Collection of scripts for automating repetitive tasks.
Neural Networks: Implementations of neural network architectures and training procedures.
OpenAI Gym: Code for interacting with and developing agents for the OpenAI Gym environment.
ORM (Object-Relational Mapping): Tools for simplifying database interactions using an ORM.
Databases: Scripts demonstrating connectivity and operations with different databases.
Cache: Implementations of caching mechanisms for optimizing data retrieval.
Logger: Utilities for logging and error tracking.
Message Queue: Code related to message queuing systems for asynchronous processing.
OTP (One-Time Password): Implementations of OTP generation and validation.
Authorization: Modules for implementing user authentication and authorization.
Intelligent Virtual Assistant: Code for creating an AI-powered virtual assistant.
Algorithms & Data Structures: Implementations of various algorithms and data structures.
Machine Learning: Supervised, unsupervised, and reinforcement learning algorithm examples.
And much more!

While the repository is a reflection of my curiosity and eagerness to explore different fields, please be aware that the quality and stability of the scripts may vary. Some of the codes might be outdated due to evolving technologies and practices, and others might not be thoroughly tested.

You can find more information in the doc.

Usage

To make the best use of this repository:

Review Code Thoroughly: Carefully review the code and scripts you're interested in before integrating them into your projects. This will help you understand their functionality and potential pitfalls.
Test Rigorously: Before deploying any code to production or critical systems, conduct thorough testing in controlled environments to identify and rectify any issues.
Contribute: If you find a bug, want to improve existing code, or have a new script to add, contributions are welcome! Please follow the Contributing guidelines below.

Contributing

While contributions to this repository are welcome, please ensure that any additions align with the repository's theme of versatility. Bug fixes, optimizations, and improvements are appreciated.

If you'd like to contribute to Joatmon, follow these steps:

Fork the repository.
Create a new branch for your changes: git checkout -b feature/your-feature-name.
Make your modifications and improvements.
Test your changes rigorously.
Commit your changes: git commit -m "Add your meaningful commit message here".
Push to the branch: git push origin feature/your-feature-name.
Open a Pull Request in this repository, detailing your changes and the motivation behind them.

Installation

  • Install joatmon from Pypi (recommended):
pip install joatmon

Install from Github source:

git clone https://github.com/malkoch/joatmon.git
cd joatmon
python setup.py install

Examples

If you want to run the examples, you'll also have to install:

Once you have installed everything, you can try out a simple example:

python examples/sokoban_dqn.py
python examples/sokoban_ddpg.py

How to run the tests

To run the tests locally, you'll first have to install the following dependencies:

pip install pytest pytest-xdist pep8 pytest-pep8 pytest-cov python-coveralls

You can then run all tests using this command:

py.test tests/.

If you want to check if the files conform to the PEP8 style guidelines, run the following command:

py.test --pep8

If you want to check the code coverage, run the following command:

py.test --cov=joatmon tests/

License

This repository is available under the MIT License. However, please be aware that the license applies to the codebase as it exists at the time of your usage. Some portions of the code might have their own licenses or restrictions. Make sure to review and respect the licensing terms of any third-party libraries or assets used in the scripts.

Thank you for exploring Joatmon! Your caution, curiosity, and contributions are highly appreciated.

Disclaimer

Use these scripts at your own risk. I am not responsible for any damages, losses, or inconveniences caused by the use of these resources. Always prioritize proper testing and validation in your projects.

Happy coding!

Hamitcan Malkoç

For more information or inquiries, please contact me at info@hamitcanmalkoc.com.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

joatmon-3.2.0.tar.gz (166.8 kB view details)

Uploaded Source

Built Distribution

joatmon-3.2.0-py3-none-any.whl (219.8 kB view details)

Uploaded Python 3

File details

Details for the file joatmon-3.2.0.tar.gz.

File metadata

  • Download URL: joatmon-3.2.0.tar.gz
  • Upload date:
  • Size: 166.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.10.13

File hashes

Hashes for joatmon-3.2.0.tar.gz
Algorithm Hash digest
SHA256 8dce21e8d3c1db9572f8c05c072f6bd0c7890c6a006c5f5ab7e9db3579667277
MD5 73f4a437f33c764eaac81a2009505d4a
BLAKE2b-256 a8f75cda31e423a4d5c8279f7a9b22d29deca7241022374666777e01dfc02bba

See more details on using hashes here.

File details

Details for the file joatmon-3.2.0-py3-none-any.whl.

File metadata

  • Download URL: joatmon-3.2.0-py3-none-any.whl
  • Upload date:
  • Size: 219.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.10.13

File hashes

Hashes for joatmon-3.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 864184838ddcb93b2d86ab444bc8c9f0edabe953ded8af726bbb7c230f2c233a
MD5 0c3f3ad318dbd9ba0a5f01aaa9223378
BLAKE2b-256 c51e72db29ff99cf256a50bc7205e5b480a83199de3cf6b7edcd57eb6a740df2

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page