Skip to main content

Command-line tool to review Python code for style and security.

Project description

Inspyctor

Inspyctor is a command-line tool to review Python code for style and security issues. It uses industry-standard tools like Flake8 and Bandit to provide detailed feedback on your Python files.


Features

  • Style Checks: Analyze code for PEP 8 compliance using Flake8.
  • Security Checks: Identify potential security vulnerabilities using Bandit.
  • Easy-to-Use CLI: Review your code with a single command: inspyctor review <file_path>.

Installation

  1. Clone the repository:

    git clone https://github.com/abhishekchaudharygh/inspyctor.git
    cd inspyctor
    
  2. Install the package:

    pip install .
    
  3. Ensure the required tools are installed:

    pip install flake8 bandit
    

Usage

Command:

inspyctor review <file_path>

Example:

inspyctor review example.py

Output:

=== Inspyctor Review ===

Style Issues:
example.py:10:1: W293 blank line contains whitespace

Security Issues:
No security issues found.

Requirements

  • Python 3.6 or higher
  • Flake8 (for style checks)
  • Bandit (for security checks)

Install the dependencies with:

pip install flake8 bandit

Development

  1. Clone the repository and navigate to its directory:

    git clone https://github.com/yourusername/inspyctor.git
    cd inspyctor
    
  2. Install the package locally for development:

    pip install -e .
    
  3. Run tests or experiment with the codebase:

    python -m inspyctor.cli review <file_path>
    

Contributing

Contributions are welcome! Follow these steps to contribute:

  1. Fork the repository.
  2. Create a feature branch: git checkout -b feature-name.
  3. Make your changes and commit: git commit -m "Add feature-name".
  4. Push to the branch: git push origin feature-name.
  5. Create a pull request.

License

This project is licensed under the MIT License.


Future Enhancements

  • Add support for more linters like pylint and mypy.
  • Include configuration options for custom rules.
  • Provide a web-based interface for the review process.
  • Explore AI integration for advanced code analysis.

Contact

For questions or support, feel free to reach out:

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

inspyctor-0.2.0.tar.gz (3.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

inspyctor-0.2.0-py3-none-any.whl (4.5 kB view details)

Uploaded Python 3

File details

Details for the file inspyctor-0.2.0.tar.gz.

File metadata

  • Download URL: inspyctor-0.2.0.tar.gz
  • Upload date:
  • Size: 3.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.2

File hashes

Hashes for inspyctor-0.2.0.tar.gz
Algorithm Hash digest
SHA256 a0416f1063eb301eb40e80d697cfe0c61c786f8e3d08d8682310a4e771ce7721
MD5 a2407da2b9c5d672dfa26500ef9dfdd4
BLAKE2b-256 04a529cf0d046e80799dc8726e5f83ae0dbc72034bd8950f3b8f35a7a0f8d56b

See more details on using hashes here.

File details

Details for the file inspyctor-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: inspyctor-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 4.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.2

File hashes

Hashes for inspyctor-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3fd64eca838fc897d780b3e8e8a5db005d925576903da7fc459235d84404a1aa
MD5 55f19d67622f8a050826cca7957e4a2d
BLAKE2b-256 2342822aeb05202ba548f6675513d13de12eeb063cc2cdf0f267ae0e6b15e182

See more details on using hashes here.

Supported by

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