From 6232e9192516b0fe4842b0263bf7ee1d8acb4e98 Mon Sep 17 00:00:00 2001 From: Rene Luria Date: Wed, 20 Aug 2025 11:10:06 +0200 Subject: [PATCH] feat: layout filters horizontally --- AGENTS.md | 38 +++++++++++++++++++++++++++----------- index.html | 36 ++++++++++++++++++++++-------------- 2 files changed, 49 insertions(+), 25 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index e06ebb2..8dc9445 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -3,7 +3,6 @@ ## Build/Lint/Test Commands ### Setup - ```bash # Install dependencies with Poetry poetry install @@ -13,7 +12,6 @@ pre-commit install ``` ### Linting and Formatting - ```bash # Run all pre-commit checks (linting, formatting, type checking) pre-commit run --all-files @@ -26,52 +24,70 @@ yamllint . # YAML linting markdownlint . # Markdown linting ``` -### Testing - +### Running Tests ```bash -# Run tests (no specific test framework configured) +# No formal test framework configured # Project uses manual testing with example PDF files in repository +# To test individual functions, run the CLI commands directly: +# myice schedule --days 7 +# myice mobile-login +# myice search --help +``` + +### Running the Web API +```bash +# Or with poetry +poetry run fastapi run myice/webapi.py --host 127.0.0.1 ``` ## Code Style Guidelines ### Imports - - Standard library imports first, then third-party, then local imports - Use explicit imports rather than wildcard imports - Group imports logically with blank lines between groups ### Formatting - - Use ruff-format for automatic formatting - Follow PEP 8 style guide - Maximum line length: 88 characters (default ruff setting) - Use 4 spaces for indentation ### Types - - Use type hints for function parameters and return values - Prefer built-in types (str, int, list, dict) over typing aliases when possible - Use typing.Annotated for Typer command options ### Naming Conventions - - Variables and functions: snake_case - Classes: PascalCase - Constants: UPPER_SNAKE_CASE - Private members: prefixed with underscore (_private) ### Error Handling - - Use try/except blocks for expected exceptions - Raise appropriate HTTPException for API errors - Include descriptive error messages - Use sys.exit(1) for command-line tool errors ### Frameworks and Libraries - - Typer for CLI interface - FastAPI for web API - requests for HTTP requests - PyPDF2 for PDF processing - Use rich for enhanced console output +- Custom rl_ai_tools package for AI functionalities + +### Git Commit Messages +- Use conventional commits format +- Never mention Claude in commit messages +- Be descriptive but concise +- Use present tense ("add feature" not "added feature") + +### Additional Rules +- Always use ddg-mcp to perform Web Search functionality +- Follow the existing code patterns in myice/myice.py and myice/webapi.py +- Maintain backward compatibility when modifying existing APIs +- Document new features in README.md +- Always run ruff format and ruff check after editing a python file +- use conventional commit messages \ No newline at end of file diff --git a/index.html b/index.html index fa39c4a..20c4eca 100644 --- a/index.html +++ b/index.html @@ -32,20 +32,28 @@