{"owner":"TheAlgorithms","repo":"Python","hasSkills":true,"totalSkillsCount":1,"totalTokensCount":730,"categories":["cursor-rule"],"hasMcp":false,"mcpConfig":null,"found":[".cursorrules (python.mdc)"],"skills":{".cursorrules (python.mdc)":"---\ndescription: \"Python best practices and patterns for modern software development with Flask and SQLite\"\nglobs: **/*.py, src/**/*.py, tests/**/*.py\nalwaysApply: false\n---\n# Python Best Practices\n\n## Project Structure\n- Use src-layout with `src/your_package_name/`\n- Place tests in `tests/` directory parallel to `src/`\n- Keep configuration in `config/` or as environment variables\n- Store requirements in `requirements.txt` or `pyproject.toml`\n- Place static files in `static/` directory\n- Use `templates/` for Jinja2 templates\n\n## Code Style\n- Follow Black code formatting\n- Use isort for import sorting\n- Follow PEP 8 naming conventions:\n  - snake_case for functions and variables\n  - PascalCase for classes\n  - UPPER_CASE for constants\n- Maximum line length of 88 characters (Black default)\n- Use absolute imports over relative imports\n\n## Type Hints\n- Use type hints for all function parameters and returns\n- Import types from `typing` module\n- Use `Optional[Type]` instead of `Type | None`\n- Use `TypeVar` for generic types\n- Define custom types in `types.py`\n- Use `Protocol` for duck typing\n\n## Flask Structure\n- Use Flask factory pattern\n- Organize routes using Blueprints\n- Use Flask-SQLAlchemy for database\n- Implement proper error handlers\n- Use Flask-Login for authentication\n- Structure views with proper separation of concerns\n\n## Database\n- Use SQLAlchemy ORM\n- Implement database migrations with Alembic\n- Use proper connection pooling\n- Define models in separate modules\n- Implement proper relationships\n- Use proper indexing strategies\n\n## Authentication\n- Use Flask-Login for session management\n- Implement Google OAuth using Flask-OAuth\n- Hash passwords with bcrypt\n- Use proper session security\n- Implement CSRF protection\n- Use proper role-based access control\n\n## API Design\n- Use Flask-RESTful for REST APIs\n- Implement proper request validation\n- Use proper HTTP status codes\n- Handle errors consistently\n- Use proper response formats\n- Implement proper rate limiting\n\n## Testing\n- Use pytest for testing\n- Write tests for all routes\n- Use pytest-cov for coverage\n- Implement proper fixtures\n- Use proper mocking with pytest-mock\n- Test all error scenarios\n\n## Security\n- Use HTTPS in production\n- Implement proper CORS\n- Sanitize all user inputs\n- Use proper session configuration\n- Implement proper logging\n- Follow OWASP guidelines\n\n## Performance\n- Use proper caching with Flask-Caching\n- Implement database query optimization\n- Use proper connection pooling\n- Implement proper pagination\n- Use background tasks for heavy operations\n- Monitor application performance\n\n## Error Handling\n- Create custom exception classes\n- Use proper try-except blocks\n- Implement proper logging\n- Return proper error responses\n- Handle edge cases properly\n- Use proper error messages\n\n## Documentation\n- Use Google-style docstrings\n- Document all public APIs\n- Keep README.md updated\n- Use proper inline comments\n- Generate API documentation\n- Document environment setup\n\n## Development Workflow\n- Use virtual environments (venv)\n- Implement pre-commit hooks\n- Use proper Git workflow\n- Follow semantic versioning\n- Use proper CI/CD practices\n- Implement proper logging\n\n## Dependencies\n- Pin dependency versions\n- Use requirements.txt for production\n- Separate dev dependencies\n- Use proper package versions\n- Regularly update dependencies\n- Check for security vulnerabilities\n"},"files":{".cursorrules (python.mdc)":"---\ndescription: \"Python best practices and patterns for modern software development with Flask and SQLite\"\nglobs: **/*.py, src/**/*.py, tests/**/*.py\nalwaysApply: false\n---\n# Python Best Practices\n\n## Project Structure\n- Use src-layout with `src/your_package_name/`\n- Place tests in `tests/` directory parallel to `src/`\n- Keep configuration in `config/` or as environment variables\n- Store requirements in `requirements.txt` or `pyproject.toml`\n- Place static files in `static/` directory\n- Use `templates/` for Jinja2 templates\n\n## Code Style\n- Follow Black code formatting\n- Use isort for import sorting\n- Follow PEP 8 naming conventions:\n  - snake_case for functions and variables\n  - PascalCase for classes\n  - UPPER_CASE for constants\n- Maximum line length of 88 characters (Black default)\n- Use absolute imports over relative imports\n\n## Type Hints\n- Use type hints for all function parameters and returns\n- Import types from `typing` module\n- Use `Optional[Type]` instead of `Type | None`\n- Use `TypeVar` for generic types\n- Define custom types in `types.py`\n- Use `Protocol` for duck typing\n\n## Flask Structure\n- Use Flask factory pattern\n- Organize routes using Blueprints\n- Use Flask-SQLAlchemy for database\n- Implement proper error handlers\n- Use Flask-Login for authentication\n- Structure views with proper separation of concerns\n\n## Database\n- Use SQLAlchemy ORM\n- Implement database migrations with Alembic\n- Use proper connection pooling\n- Define models in separate modules\n- Implement proper relationships\n- Use proper indexing strategies\n\n## Authentication\n- Use Flask-Login for session management\n- Implement Google OAuth using Flask-OAuth\n- Hash passwords with bcrypt\n- Use proper session security\n- Implement CSRF protection\n- Use proper role-based access control\n\n## API Design\n- Use Flask-RESTful for REST APIs\n- Implement proper request validation\n- Use proper HTTP status codes\n- Handle errors consistently\n- Use proper response formats\n- Implement proper rate limiting\n\n## Testing\n- Use pytest for testing\n- Write tests for all routes\n- Use pytest-cov for coverage\n- Implement proper fixtures\n- Use proper mocking with pytest-mock\n- Test all error scenarios\n\n## Security\n- Use HTTPS in production\n- Implement proper CORS\n- Sanitize all user inputs\n- Use proper session configuration\n- Implement proper logging\n- Follow OWASP guidelines\n\n## Performance\n- Use proper caching with Flask-Caching\n- Implement database query optimization\n- Use proper connection pooling\n- Implement proper pagination\n- Use background tasks for heavy operations\n- Monitor application performance\n\n## Error Handling\n- Create custom exception classes\n- Use proper try-except blocks\n- Implement proper logging\n- Return proper error responses\n- Handle edge cases properly\n- Use proper error messages\n\n## Documentation\n- Use Google-style docstrings\n- Document all public APIs\n- Keep README.md updated\n- Use proper inline comments\n- Generate API documentation\n- Document environment setup\n\n## Development Workflow\n- Use virtual environments (venv)\n- Implement pre-commit hooks\n- Use proper Git workflow\n- Follow semantic versioning\n- Use proper CI/CD practices\n- Implement proper logging\n\n## Dependencies\n- Pin dependency versions\n- Use requirements.txt for production\n- Separate dev dependencies\n- Use proper package versions\n- Regularly update dependencies\n- Check for security vulnerabilities\n"},"items":[{"name":".cursorrules","path":".cursorrules (python.mdc)","rawUrl":"https://raw.githubusercontent.com/PatrickJS/awesome-cursorrules/main/rules/python.mdc","title":"Awesome Cursorrules: python","category":"cursor-rule","format":"markdown","content":"---\ndescription: \"Python best practices and patterns for modern software development with Flask and SQLite\"\nglobs: **/*.py, src/**/*.py, tests/**/*.py\nalwaysApply: false\n---\n# Python Best Practices\n\n## Project Structure\n- Use src-layout with `src/your_package_name/`\n- Place tests in `tests/` directory parallel to `src/`\n- Keep configuration in `config/` or as environment variables\n- Store requirements in `requirements.txt` or `pyproject.toml`\n- Place static files in `static/` directory\n- Use `templates/` for Jinja2 templates\n\n## Code Style\n- Follow Black code formatting\n- Use isort for import sorting\n- Follow PEP 8 naming conventions:\n  - snake_case for functions and variables\n  - PascalCase for classes\n  - UPPER_CASE for constants\n- Maximum line length of 88 characters (Black default)\n- Use absolute imports over relative imports\n\n## Type Hints\n- Use type hints for all function parameters and returns\n- Import types from `typing` module\n- Use `Optional[Type]` instead of `Type | None`\n- Use `TypeVar` for generic types\n- Define custom types in `types.py`\n- Use `Protocol` for duck typing\n\n## Flask Structure\n- Use Flask factory pattern\n- Organize routes using Blueprints\n- Use Flask-SQLAlchemy for database\n- Implement proper error handlers\n- Use Flask-Login for authentication\n- Structure views with proper separation of concerns\n\n## Database\n- Use SQLAlchemy ORM\n- Implement database migrations with Alembic\n- Use proper connection pooling\n- Define models in separate modules\n- Implement proper relationships\n- Use proper indexing strategies\n\n## Authentication\n- Use Flask-Login for session management\n- Implement Google OAuth using Flask-OAuth\n- Hash passwords with bcrypt\n- Use proper session security\n- Implement CSRF protection\n- Use proper role-based access control\n\n## API Design\n- Use Flask-RESTful for REST APIs\n- Implement proper request validation\n- Use proper HTTP status codes\n- Handle errors consistently\n- Use proper response formats\n- Implement proper rate limiting\n\n## Testing\n- Use pytest for testing\n- Write tests for all routes\n- Use pytest-cov for coverage\n- Implement proper fixtures\n- Use proper mocking with pytest-mock\n- Test all error scenarios\n\n## Security\n- Use HTTPS in production\n- Implement proper CORS\n- Sanitize all user inputs\n- Use proper session configuration\n- Implement proper logging\n- Follow OWASP guidelines\n\n## Performance\n- Use proper caching with Flask-Caching\n- Implement database query optimization\n- Use proper connection pooling\n- Implement proper pagination\n- Use background tasks for heavy operations\n- Monitor application performance\n\n## Error Handling\n- Create custom exception classes\n- Use proper try-except blocks\n- Implement proper logging\n- Return proper error responses\n- Handle edge cases properly\n- Use proper error messages\n\n## Documentation\n- Use Google-style docstrings\n- Document all public APIs\n- Keep README.md updated\n- Use proper inline comments\n- Generate API documentation\n- Document environment setup\n\n## Development Workflow\n- Use virtual environments (venv)\n- Implement pre-commit hooks\n- Use proper Git workflow\n- Follow semantic versioning\n- Use proper CI/CD practices\n- Implement proper logging\n\n## Dependencies\n- Pin dependency versions\n- Use requirements.txt for production\n- Separate dev dependencies\n- Use proper package versions\n- Regularly update dependencies\n- Check for security vulnerabilities\n","tokens":730,"sizeBytes":3393}],"systemPromptSnippet":"<yakaai_skills repo=\"TheAlgorithms/Python\">\n<!-- File: .cursorrules (python.mdc) (Tokens: ~730 | Category: cursor-rule) -->\n---\ndescription: \"Python best practices and patterns for modern software development with Flask and SQLite\"\nglobs: **/*.py, src/**/*.py, tests/**/*.py\nalwaysApply: false\n---\n# Python Best Practices\n\n## Project Structure\n- Use src-layout with `src/your_package_name/`\n- Place tests in `tests/` directory parallel to `src/`\n- Keep configuration in `config/` or as environment variables\n- Store requirements in `requirements.txt` or `pyproject.toml`\n- Place static files in `static/` directory\n- Use `templates/` for Jinja2 templates\n\n## Code Style\n- Follow Black code formatting\n- Use isort for import sorting\n- Follow PEP 8 naming conventions:\n  - snake_case for functions and variables\n  - PascalCase for classes\n  - UPPER_CASE for constants\n- Maximum line length of 88 characters (Black default)\n- Use absolute imports over relative imports\n\n## Type Hints\n- Use type hints for all function parameters and returns\n- Import types from `typing` module\n- Use `Optional[Type]` instead of `Type | None`\n- Use `TypeVar` for generic types\n- Define custom types in `types.py`\n- Use `Protocol` for duck typing\n\n## Flask Structure\n- Use Flask factory pattern\n- Organize routes using Blueprints\n- Use Flask-SQLAlchemy for database\n- Implement proper error handlers\n- Use Flask-Login for authentication\n- Structure views with proper separation of concerns\n\n## Database\n- Use SQLAlchemy ORM\n- Implement database migrations with Alembic\n- Use proper connection pooling\n- Define models in separate modules\n- Implement proper relationships\n- Use proper indexing strategies\n\n## Authentication\n- Use Flask-Login for session management\n- Implement Google OAuth using Flask-OAuth\n- Hash passwords with bcrypt\n- Use proper session security\n- Implement CSRF protection\n- Use proper role-based access control\n\n## API Design\n- Use Flask-RESTful for REST APIs\n- Implement proper request validation\n- Use proper HTTP status codes\n- Handle errors consistently\n- Use proper response formats\n- Implement proper rate limiting\n\n## Testing\n- Use pytest for testing\n- Write tests for all routes\n- Use pytest-cov for coverage\n- Implement proper fixtures\n- Use proper mocking with pytest-mock\n- Test all error scenarios\n\n## Security\n- Use HTTPS in production\n- Implement proper CORS\n- Sanitize all user inputs\n- Use proper session configuration\n- Implement proper logging\n- Follow OWASP guidelines\n\n## Performance\n- Use proper caching with Flask-Caching\n- Implement database query optimization\n- Use proper connection pooling\n- Implement proper pagination\n- Use background tasks for heavy operations\n- Monitor application performance\n\n## Error Handling\n- Create custom exception classes\n- Use proper try-except blocks\n- Implement proper logging\n- Return proper error responses\n- Handle edge cases properly\n- Use proper error messages\n\n## Documentation\n- Use Google-style docstrings\n- Document all public APIs\n- Keep README.md updated\n- Use proper inline comments\n- Generate API documentation\n- Document environment setup\n\n## Development Workflow\n- Use virtual environments (venv)\n- Implement pre-commit hooks\n- Use proper Git workflow\n- Follow semantic versioning\n- Use proper CI/CD practices\n- Implement proper logging\n\n## Dependencies\n- Pin dependency versions\n- Use requirements.txt for production\n- Separate dev dependencies\n- Use proper package versions\n- Regularly update dependencies\n- Check for security vulnerabilities\n</yakaai_skills>"}