Metadata-Version: 2.1
Name: sws
Version: 0.1.1
Summary: A command line interface, and set of scripts for web tasks
Home-page: https://github.com/Descent098/sws
Author: Kieran Wood
Author-email: kieran@canadiancoding.ca
License: UNKNOWN
Description: ![sws-banner](https://raw.githubusercontent.com/Descent098/sws/master/docs/img/sws-banner.png)
        
        
        
        # Super Web Scripts
        
        A command line interface, and set of scripts for common web tasks.
        
        
        
        ## Quick-start
        
        ### Installation
        
        ### From PyPi
        
        run ```pip install sws``` or ```sudo pip3 install sws```.
        
        
        
        ### From source
        
        1. Clone the github repo ([https://github.com/Descent098/sws](https://github.com/Descent098/sws))
        2. cd into the 'sws' root directory (where setup.py is) and run ```pip install .``` or ```sudo pip3 install . ```
        
        
        
        You can validate it is installed properly by typing ```sws``` into your terminal, the output should look like this:
        
        ```bash
        Super Web Scripts; A command line interface, and set of scripts for web tasks.
        
        Usage:
            sws [-h] [-v]
            sws redirects <url> [-t]
            sws youtube <url> [<path>]
            sws ssl <hostname> [-e] [-c]
        
        Options:
            -h --help               Show this help message and exit
            -v --version            Show program's version number and exit
            -e --expiry             If specified will check the expiry of ssl cert/domain
            -c --cert               If specified will print the full details of the SSL cert
            -t --trace              If specified will show the full trace of the provided url
        ```
        
        
        ## Documentation
        
        User Documentation can be found at [https://kieranwood.ca/sws/](https://kieranwood.ca/sws/).
        
        
        
        ## Development-Contribution guide
        
        ### Installing development dependencies
        
        There are a few dependencies you will need to use this package fully, they are specified in the extras require parameter in setup.py but you can install them manually:
        
        ```
        nox   	# Used to run automated processes
        pytest 	# Used to run the test code in the tests directory
        mkdocs	# Used to create HTML versions of the markdown docs in the docs directory
        ```
        
        Just go through and run ```pip install <name>``` or ```sudo pip3 install <name>```. These dependencies will help you to automate documentation creation, testing, and build + distribution (through PyPi) automation.
        
        
        
        ### Folder Structure
        
        *A Brief explanation of how the project is set up for people trying to get into developing for it*
        
        
        
        #### /sws/command_line_utility.py
        
        The main entrypoint for the sws command.
        
        
        
        ##### /sws/utilities
        
        Contains all the core logic that is used by the main entrypoint.
        
        
        
        #### /docs
        
        *Contains markdown source files to be used with [mkdocs](https://www.mkdocs.org/) to create html/pdf documentation.* 
        
        **Before you can use this you will need to setup the mkdocs.yml file **
        
        
        
        #### /tests
        
        *Contains tests to be run before release* 
        
        **Before you can use this you will need to create tests, for more details take a look at [pytest](https://docs.pytest.org/en/latest/) **
        
        
        
        #### Root Directory
        
        **setup.py**: Contains all the configuration for installing the package via pip.
        
        
        
        **LICENSE**: This file contains the licensing information about the project.
        
        
        
        **CHANGELOG.md**: Used to create a changelog of features you add, bugs you fix etc. as you release.
        
        
        
        **mkdocs.yml**: Used to specify how to build documentation from the source markdown files.
        
        
        
        **noxfile.py**: Used to configure various automated processes using [nox](https://nox.readthedocs.io/en/stable/), these include;
        
        - Building release distributions
        - Releasing distributions on PyPi
        - Running test suite agains a number of python versions (3.5-current)
        
        If anything to do with deployment or releases is failing, this is likely the suspect.
        
        
        
        There are 4 main sessions built into the noxfile and they can be run using ```nox -s <session name>``` i.e. ```nox -s test```:
        
        - build: Creates a source distribution, builds the markdown docs to html, and creates a universal wheel distribution for PyPi.
        - release: First runs the build session, then asks you to confirm all the pre-release steps have been completed, then runs *twine* to upload to PyPi
        - test: Runs the tests specified in /tests using pytest, and runs it on python versions 3.5-3.8 (assuming they are installed)
        - docs: Serves the docs on a local http server so you can validate they have the content you want without having to fully build them.
        
        
        
        **.gitignore**: A preconfigured gitignore file (info on .gitignore files can be found here: https://www.atlassian.com/git/tutorials/saving-changes/gitignore)
        # Changelog
        
        ## V0.1.0; February 4th 2020
        
        Initial release went out on github and PyPi. Ported functionality from kuws package.
        
        Features:
        
        - Trace redirects
        - Download YouTube videos directly from command line
        - Check SSL status information and expiry date
        
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Development Status :: 4 - Beta
Description-Content-Type: text/markdown
Provides-Extra: dev
