A collection of daily usage utility scripts in python. Helps in automation of day to day repetitive tasks.

Overview

Kush's Utils Tool

Logo For Utils Tool Kush's Utils Tool is my personal collection of scripts which is used to automated daily tasks. It is a evergrowing collection of scripts and will continue to evolve till the day I program. This is also my first python project.

Ever evolving project. May see major rework at at anypoint of time

Current version - 0.0.2

Features

  • Project Structure creator for a given language (currently cpp only)
  • Amazon.in Price Tracker with Email alert (from Hacktober Contribution)
  • Random Dice Rolls and Coin Toss (from Hacktober Contribution)
  • More scripts will be added soon and the tool will be extended as and when need be...

NOTE: Some Hacktober contributions though pulled have been held for integration later. Check back at later to see their integration.

Usage

kush-util.py is the entry point. Other files are helpers.

First Level Arguments

Usage : python kush-util.py [opt-args]

CLI Arguments Type Description
-h, --help opt-args Show help for commands
-v, --version opt-args Show version for the utils program
create pos-args Create project from templates
modify pos-args Modify project templates metadata
delete pos-args Delete project folder created using utils
hackto pos-args Utility scripts by community during Hacktober

For Creating a Project - Second Level Arguments

Usage : python kush-util.py create [opt-args]

CLI Arguments Type Description
-h, --help opt-args Show help for create
--plang opt-args Specify Projects Programming Language
--pname opt-args Specify Projects Name
--pname opt-args Specify Projects Path

For Accessing Hacktober Contributions - Second Level Arguments

Usage : python kush-util.py hackto [opt-args]

CLI Arguments Type Description
-h, --help opt-args Show help for create
random pos-args Random Chance Things
price_alert pos-args Get Price alert for Amazon.in products

For Accessing Price Alert Scripts - Third Level Arguments

Usage : python kush-util.py hackto price_alert [opt-args]

CLI Arguments Type Description
-h, --help opt-args Show help for create
url pos-args URL for the product
eprice pos-args Expected price in INR for the product
--s_email opt-args Sender Email (set default in globals)
--s_pass opt-args Sender Password (set default in globals)
--r_email opt-args Receiver Email (set default in globals)

For Accessing Random Generators Scripts - Third Level Arguments

Usage : python kush-util.py hackto random [opt-args]

CLI Arguments Type Description
-h, --help opt-args Show help for create
--roll_dice opt-args Roll a Double Dice!
--toss_coin opt-args Toss a Coin!
--sort_hat opt-args Get sorted at Hogwartz!

Running

  1. Create a virtualenv
  2. Get the required packages through pip from requirements.txt
  3. Run the kush-util.py script with the required args.

Requirements

  • pathlib - Approach for pathlib usage:
    • create directory if not exist
    • create file if not exist and populate specific filetype with predefined templates
    • basically filesystem related tasks.
  • anytree - Approach for anytree usage:
    • store project and directory structure as tree
    • check if leaf is file then create the file with a predefined template
    • if the leaf is a directory keep the directory empty
  • argparse - Approach for argparse usage:
    • multiple sub-parser for major commands
    • args in the sub-parsers for major commands specific feature
    • inspiration for chained arguments taken from git cli.
  • requests - Approach for requests usage:
    • get the webpage locally in a machine readable format
  • beautifulsoup4 - Approach for beautifulsoup4 usage:
    • for the webpage from requests scrap required ids and classes
  • smtplib - Approach for smtplib usage:
    • sending emails - currently gmail only using smtp
  • cowsay - Approach for cowsay usage
    • for adding fun element in printing on CLI screen.

Contributing

NOTE: Check the TODO before opening issues to check if it is detected and is being worked upon.

This project is open to and encourages contributions! Feel free to discuss any bug fixes/features in the issues. If you wish to work on this project and extend it with your own daily usage scripts:

  1. Fork this project
  2. Create a branch (git checkout -b new-branch)
  3. Commit your changes (git commit -am 'add new feature')
  4. Push to the branch (git push origin new-branch)
  5. Submit a pull request!
Owner
Kushagra
Student CSE (Spl. Gaming Tech)
Kushagra
Python interface to IEX and IEX cloud APIs

Python interface to IEX Cloud Referral Please subscribe to IEX Cloud using this referral code. Getting Started Install Install from pip pip install py

IEX Cloud 41 Dec 21, 2022
Генератор отчетов на Python с использованием библиотеки docx для работы с word-файлами и запросов к сервису

Генератор отчетов на Python с использованием библиотеки docx для работы с word-файлами и запросов к сервису

Semyon Esaev 2 Jun 24, 2022
Cairo-integer-types - A library for bitwise integer types (e.g. int64 or uint32) in Cairo, with a test suite

The Cairo bitwise integer library (cairo-bitwise-int v0.1.1) The Cairo smart tes

27 Sep 23, 2022
rebalance is a simple Python 3.9+ library for rebalancing investment portfolios

rebalance rebalance is a simple Python 3.9+ library for rebalancing investment portfolios. It supports cash flow rebalancing with contributions and wi

Darik Harter 5 Feb 26, 2022
Python script to preprocess images of all Pokémon to finetune ruDALL-E

ai-generated-pokemon-rudalle Python script to preprocess images of all Pokémon (the "official artwork" of each Pokémon via PokéAPI) into a format such

Max Woolf 132 Dec 11, 2022
An easy-to-learn, dynamic, interpreted, procedural programming language

Gen Programming Language WARNING!! THIS LANGUAGE IS IN DEVELOPMENT. ANYTHING CAN CHANGE AT ANY MOMENT. Gen is a dynamic, interpreted, procedural progr

Gen Programming Language 7 Oct 17, 2022
Team collaborative evaluation tracker.

Team collaborative evaluation tracker.

2 Dec 19, 2021
Replay Felica Exchange For Python

FelicaReplay Replay Felica Exchange Description Standalone Replay Module Usage Save FelicaRelay (=2.0) output to file, then python replay.py [FILE].

3 Jul 14, 2022
pydock - Docker-based environment manager for Python

pydock - Docker-based environment manager for Python ⚠️ pydock is still in beta mode, and very unstable. It is not recommended for anything serious. p

Alejandro Piad 16 Sep 18, 2021
Provide error messages for Python exceptions, even if the original message is empty

errortext is a Python package to provide error messages for Python exceptions, even if the original message is empty.

Thomas Aglassinger 0 Dec 07, 2021
Comics/doujinshi reader application. Web-based, will work on desktop and tablet devices with swipe interface.

Yomiko Comics/doujinshi reader application. Web-based, will work on desktop and tablet devices with swipe interface. Scans one or more directories of

Kyubi Systems 26 Aug 10, 2022
PKU team for 2021 project 'Guangchangwu detection'.

PKU team for 2021 project 'Guangchangwu detection'.

Helin Wang 3 Feb 21, 2022
p5 is a Python package based on the core ideas of Processing.

p5 p5 is a Python library that provides high level drawing functionality to help you quickly create simulations and interactive art using Python. It c

p5py 645 Jan 04, 2023
This repo holds custom callback plugin, so your Ansible could write everything in the PostgreSQL database.

English What is it? This is callback plugin that dumps most of the Ansible internal state to the external PostgreSQL database. What is this for? If yo

Sergey Pechenko 19 Oct 21, 2022
This collection is to provide an easier way to interact with Juniper

Ansible Collection - cremsburg.apstra Overview The goal of this collection is to provide an easier way to interact with Juniper's Apstra solution. Whi

Calvin Remsburg 1 Jan 18, 2022
Recreate the joys of Office Assistant from the comfort of the Python interpreter

Recreate the joys of Office Assistant from the comfort of the Python interpreter.

Louis Sven Goulet 3 May 21, 2022
Got-book-6 - LSTM trained on the first five ASOIAF/GOT books

GOT Book 6 Generator Are you tired of waiting for the next GOT book to come out? I know that I am, which is why I decided to train a RNN on the first

Zack Thoutt 974 Oct 27, 2022
A simple language for new programmers and a toy language ;)

Yell An extremely simple, yet powerful language for new programmers, as well as a toy language ;) Explore the docs » Report Bug · Request Feature Yell

Yell 4 Dec 28, 2021
Automates the fixing of problems reported by yamllint by parsing its output

yamlfixer yamlfixer automates the fixing of problems reported by yamllint by parsing its output. Usage This software automatically fixes some errors a

OPT Nouvelle Caledonie 26 Dec 26, 2022
An open-source hyper-heuristic framework for multi-objective optimization

MOEA-HH An open-source hyper-heuristic framework for multi-objective optimization. Introduction The multi-objective optimization technique is widely u

Hengzhe Zhang 1 Feb 10, 2022