generative-ai-for-beginners/shared/python/__init__.py
Claude 2bdc61d4cd
feat: Add comprehensive security fixes, code quality improvements, and documentation
Security Fixes (HIGH Severity):
- Fix hardcoded SECRET_KEY in Flask app - now uses environment variable
- Add function validation to prevent arbitrary function execution in JS
- Add path traversal protection in certificate handling
- Fix unsafe JSON parsing with proper error handling

Security Fixes (MEDIUM Severity):
- Add environment variable validation with helpful error messages
- Add request timeouts and proper error handling for HTTP calls
- Fix file handle leaks using context managers
- Add input validation and sanitization for user inputs

Code Quality Improvements:
- Add ESLint configuration for JavaScript/TypeScript linting
- Add Prettier configuration for consistent code formatting
- Add pyproject.toml with Black, Ruff, mypy, and pytest configuration
- Create shared Python utilities module with:
  - env_utils.py: Environment variable handling
  - input_validation.py: Input validation and sanitization
  - api_utils.py: Safe API request wrappers

Documentation:
- Add SECURITY_GUIDELINES.md with best practices for AI applications
- Add ENHANCED_FEATURES_ROADMAP.md with improvement recommendations
  including new lesson topics, API modernization, and CI/CD enhancements

Files Modified:
- 05-advanced-prompts/{python,javascript}/*
- 06-text-generation-apps/{python,js-githubmodels}/*
- 07-building-chat-applications/js-githubmodels/*
- 08-building-search-applications/{js-githubmodels,scripts}/*
- 09-building-image-applications/python/*
- 11-integrating-with-function-calling/{js-githubmodels,typescript}/*
2026-01-21 10:00:28 +00:00

30 lines
737 B
Python

"""
Shared utilities for the Generative AI for Beginners course.
This module provides common functionality used across multiple lessons,
including environment variable handling, input validation, and API utilities.
"""
from .env_utils import get_required_env, validate_env_vars
from .input_validation import (
validate_number_input,
validate_text_input,
sanitize_prompt_input,
)
from .api_utils import (
make_safe_request,
create_openai_client,
create_azure_openai_client,
)
__all__ = [
"get_required_env",
"validate_env_vars",
"validate_number_input",
"validate_text_input",
"sanitize_prompt_input",
"make_safe_request",
"create_openai_client",
"create_azure_openai_client",
]