diff --git a/.deepsource.toml b/.deepsource.toml deleted file mode 100644 index 60fc547..0000000 --- a/.deepsource.toml +++ /dev/null @@ -1,20 +0,0 @@ -version = 1 - -[[analyzers]] -name = "secrets" -enabled = true - -[[analyzers]] -name = "python" -enabled = true - - [analyzers.meta] - runtime_version = "3.x.x" - -[[transformers]] -name = "black" -enabled = true - -[[transformers]] -name = "isort" -enabled = true diff --git a/README.md b/README.md index 3762043..689241a 100644 --- a/README.md +++ b/README.md @@ -1,31 +1,76 @@ # String Permutation [![Project Tracker](https://img.shields.io/badge/repo%20status-Project%20Tracker-lightgrey)](https://wiki.hthompson.dev/en/project-tracker) -![Platform](https://img.shields.io/badge/platform-macOS|Linux|Windows-lightgrey) [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) -[![Codacy Badge](https://app.codacy.com/project/badge/Grade/50debbed985345b289cd6ff0d1fd0f76)](https://www.codacy.com/gh/StrangeRanger/string-permutation/dashboard?utm_source=github.com&utm_medium=referral&utm_content=StrangeRanger/string-permutation&utm_campaign=Badge_Grade) This project is designed to take a given word or string of characters and create every possible permutation. While this isn't a huge project, there are a few things that might need explaining or would be good to know. [Click here](https://github.com/StrangeRanger/string-permutation/wiki) to take a look at the wiki. +## Demo + +[![asciicast](https://asciinema.hthompson.dev/a/8.svg)](https://asciinema.hthompson.dev/a/8) + +## Features + +- **Two permutation types:** + - Permutation with partial or no repetition + - Permutation with repetition +- **Flexible output options:** + - Display permutations on screen + - Save permutations to a file +- **Duplicate character handling:** + - Automatic detection of duplicate characters + - Options to remove duplicates or continue with them +- **Progress tracking:** Real-time progress bar for file operations +- **Cross-platform support:** Works on Windows, macOS, and Linux +- **File size estimation:** Shows approximate output file size before generation + ## Getting Started ### Prerequisites -To install dependencies for Inspector, run either of the following commands: +- **Python** 3.7 or higher +- **Optional:** `pipenv` for virtual environment management (recommended) + +### Installation -- `python3 -m pip install -r requirements.txt` (installs globally) -- `pipenv install -r requirements.txt` (installs locally via pipenv) +1. Clone the repository: + ```bash + git clone https://github.com/StrangeRanger/string-permutation + cd string-permutation + ``` -### Installing +2. Install dependencies (choose one method): -All you need to do is download the repository. There are no binaries or anything to install. + **Option A: Global installation** + ```bash + python3 -m pip install -r requirements.txt + ``` -`git clone https://github.com/StrangeRanger/string-permutation` + **Option B: Virtual environment (recommended)** + ```bash + # Install pipenv if you don't have it + pip install pipenv + + # Install dependencies in virtual environment + pipenv install + ``` ## Usage -To execute the program, simply use the following command: +To execute the program, use one of the following commands: + +**If using global installation:** +```bash +python3 string_permutation.py +``` + +**If using pipenv:** +```bash +pipenv run python string_permutation.py +``` + +## License -`python3 string-permutation` +This project is licensed under the [MIT License](LICENSE).