VS Code Integration

This project includes VS Code configuration files to streamline development. These files are located in the .vscode directory and provide a comprehensive development environment.

Debug Configurations

The launch.json file contains debug configurations for running and debugging your code:

  • Python: Current File - Run and debug the currently open file

  • Python: Search Example - Run the basic search example

  • Python: Advanced Search Example - Run the advanced search example

  • Python: Product Fetch Example - Run the product fetch example

  • Python: Debug Tests - Debug the current test file

  • Python: All Tests - Run all tests with verbose output

  • Python: Tests with Coverage - Run tests with coverage reporting

Key features:

  • Sets PYTHONPATH to include the workspace folder

  • Disables “justMyCode” to allow debugging into libraries

  • Uses integrated terminal for better output

To use these configurations:

  1. Open a file you want to debug

  2. Set breakpoints by clicking in the gutter

  3. Press F5 or select a configuration from the debug dropdown

Tasks

The tasks.json file defines common development tasks that can be run with Ctrl+Shift+P → “Tasks: Run Task”:

  • Run Tests - Run pytest on the project

  • Run Tests with Coverage - Run tests with coverage reporting

  • Lint with Flake8 - Check code style with Flake8

  • Format with Black - Format code with Black

  • Sort imports with isort - Sort imports with isort

  • Type check with mypy - Run static type checking

  • Build Documentation - Build Sphinx documentation

  • Update Version - Run the version update script with a prompt for the new version

  • Install Development Dependencies - Install dev dependencies

  • Install Documentation Dependencies - Install docs dependencies

To run a task:

  1. Press Ctrl+Shift+P (or Cmd+Shift+P on Mac)

  2. Type “Tasks: Run Task”

  3. Select the task you want to run

Settings

The settings.json file contains Python-specific settings:

  • Linting - Enabled Flake8 and mypy

  • Formatting - Set Black as the formatter with 100 character line length

  • Testing - Configured pytest as the test framework

  • Editor - Set format on save and organize imports on save

  • File Exclusions - Hide common Python cache and build directories

  • Docstrings - Set Google style for auto-generated docstrings

Extensions

For the best development experience, we recommend installing the following VS Code extensions:

  • Python - Microsoft’s Python extension

  • Pylance - Language server with rich type information

  • Python Test Explorer - Test explorer integration for pytest

  • Python Docstring Generator - Generate docstrings automatically

  • autoDocstring - Python docstring generator

  • Black Formatter - Black integration for VS Code

  • Flake8 - Flake8 integration for VS Code

  • isort - Import sorting integration for VS Code

  • markdownlint - Markdown linting

You can install these extensions by searching for them in the VS Code extensions panel (Ctrl+Shift+X).