vvifi 0.1.0

Creator: bradpython12

Last updated:

Add to Cart

Description:

vvifi 0.1.0

vvifi


A Python CLI to quickly check your Wi-Fi network password.
References

Wi-Fi Wikipedia page
Siddharth Dushantha's wifi-password CLI
Ankit Jain's wifiPassword CLI

Quickstart
Usage: vvifi [OPTIONS]

A Python CLI to quickly check your Wi-Fi network password. By default, the
network you are connected to is considered.

Options:
--networks Show the names (SSIDs) of saved Wi-Fi networks and exit.
-n, --network NAME The name (SSID) of a Wi-Fi network you have previously
connected to.

--version Show the version and exit.
--help Show this message and exit.

Development

poetry install
poetry shell

Tech Stack

Click (for the interface)
python-string-utils (to remove multiline string indentation)

Packaging and Development

Poetry
Mypy
isort
Black
Flake8

flake8-bugbear
flake8-comprehensions
pep8-naming
flake8-builtins


Bandit

This CLI was created with Cookiecutter and the joaopalmeiro/cookiecutter-templates/python-cli project template.
Notes

python.pythonPath (settings.json file) is deprecated. More info here, here, and here. Alternative (source): "python.defaultInterpreterPath": "${workspaceFolder}/.venv/bin/python".
subprocess module (Python 3.6).
sys.platform values.
security find-generic-password -h.
/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport -h (more info here).
Regular expression used by textwrap.dedent().
Classifiers:

"Operating System :: MacOS" + "Operating System :: MacOS :: MacOS X" (macOS).
Mac OS 9 was succeeded by Mac OS X.
In the future, replace with "Operating System :: OS Independent".


Click:

User Input Prompts: Click supports input and confirmation prompts.
Interactive User Prompts issue.


PyInquirer and inquirer packages.
Find the interface for the Wi-Fi network (source): networksetup -listallhardwareports.
List preferred Wi-Fi networks (source): networksetup -listpreferredwirelessnetworks en0 (or networksetup -listpreferredwirelessnetworks en1). The wireless networks the computer has connected to are listed here.
click-help-colors package.
Datadog's mkdocs-click extension.

python-string-utils implementation to remove indentation from multiline strings
import re
from typing import Pattern

# The second `^` is to match a character not present in the list.
MARGIN_RE: Pattern[str] = re.compile(r"^[^\S\r\n]+")


def strip_margin(input_string: str) -> str:
# ...
line_separator = "\n"
lines = [MARGIN_RE.sub("", line) for line in input_string.split(line_separator)]
out = line_separator.join(lines)

return out

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.