diff --git a/structure.md b/structure.md new file mode 100644 index 0000000..4544d74 --- /dev/null +++ b/structure.md @@ -0,0 +1,61 @@ +# Reddit CLI Project Structure + +This document describes the purpose and functionality of each file in the Reddit CLI project, excluding those ignored by .gitignore. + +## Core Application Files + +### `src/main.py` +Main application entrypoint that implements the Reddit CLI interface. Contains: +- `RedditClient` class for interacting with Reddit API +- `AIClient` class for AI-powered summarization using Ollama API +- `RedditCLI` class that manages the user interface and application flow +- Main execution logic that handles user input and navigation + +### `src/__init__.py` +Python package initialization file. Currently empty but required for proper module structure. + +### `src/pagination.md` +Documentation file describing pagination implementation for navigating through multiple pages of search results from Reddit API. + +## Setup and Execution Scripts + +### `setup.sh` +Setup script that creates a Python virtual environment and installs all required dependencies from requirements.txt. + +### `run.sh` +Run script that activates the virtual environment and executes the Reddit CLI application with given arguments. + +## Testing + +### `tests/test_cli.py` +Unit tests for the Reddit CLI application components: +- Tests for `RedditClient` class functionality +- Tests for `AIClient` class functionality +- Basic test structure for verifying core functionality + +## Dependencies and Configuration + +### `requirements.txt` +Lists all Python dependencies required for the project: +- `requests`: For making HTTP requests to Reddit API +- `rich`: For creating formatted terminal output +- `pyyaml`: For YAML configuration handling +- `pytest` and `pytest-cov`: For testing framework and coverage reporting + +## Documentation + +### `README.md` +Main documentation file that explains: +- Project overview and features +- Installation instructions +- Usage examples with keyboard controls +- Configuration details +- Testing procedures +- Contributing guidelines +- License information + +### `plan.md` +Project plan or roadmap documenting planned features and development steps for the Reddit CLI application. + +### `prompt.md` +AI prompt template used for generating summaries of Reddit posts. This file contains instructions for how to format the request sent to the AI model for summarization. \ No newline at end of file