diff --git a/.codeboarding/Content & Listing Management.md b/.codeboarding/Content & Listing Management.md
new file mode 100644
index 000000000..df59a1bc1
--- /dev/null
+++ b/.codeboarding/Content & Listing Management.md
@@ -0,0 +1,170 @@
+```mermaid
+graph LR
+ Reddit_Client["Reddit Client"]
+ Content_Listing_Management["Content & Listing Management"]
+ Listing_Generators["Listing Generators"]
+ Comment_Objects["Comment Objects"]
+ Submission_Objects["Submission Objects"]
+ Subreddit_Objects["Subreddit Objects"]
+ User_Objects["User Objects"]
+ Inbox_Manager["Inbox Manager"]
+ Draft_Management["Draft Management"]
+ Stream_Utilities["Stream Utilities"]
+ Listing_Mixins["Listing Mixins"]
+ Reddit_Client -- "Provides access to" --> Comment_Objects
+ Reddit_Client -- "Provides access to" --> Submission_Objects
+ Reddit_Client -- "Provides access to" --> Subreddit_Objects
+ Reddit_Client -- "Provides access to" --> User_Objects
+ Reddit_Client -- "Manages user inbox through" --> Inbox_Manager
+ Reddit_Client -- "Manages drafts through" --> Draft_Management
+ Reddit_Client -- "Provides access to" --> Content_Listing_Management
+ Content_Listing_Management -- "Uses" --> Listing_Generators
+ Content_Listing_Management -- "Manages" --> Comment_Objects
+ Content_Listing_Management -- "Manages" --> Submission_Objects
+ Content_Listing_Management -- "Uses" --> Listing_Mixins
+ Content_Listing_Management -- "Uses" --> Draft_Management
+ Content_Listing_Management -- "Uses" --> Stream_Utilities
+ Inbox_Manager -- "Uses for data retrieval" --> Listing_Generators
+ Listing_Mixins -- "Implements listings via" --> Listing_Generators
+ Stream_Utilities -- "Can consume output from" --> Listing_Generators
+ Comment_Objects -- "Forms hierarchical structures with" --> Comment_Objects
+ Submission_Objects -- "Contains comments" --> Comment_Objects
+ Subreddit_Objects -- "Receives submissions" --> Submission_Objects
+ Subreddit_Objects -- "Extends with listing features" --> Listing_Mixins
+ User_Objects -- "Enables streaming of user content" --> Stream_Utilities
+ Subreddit_Objects -- "Enables streaming of subreddit content" --> Stream_Utilities
+ Listing_Generators -- "Produces" --> Comment_Objects
+ Listing_Generators -- "Produces" --> Submission_Objects
+ Listing_Generators -- "Produces" --> User_Objects
+ Listing_Generators -- "Produces" --> Subreddit_Objects
+```
+[](https://github.com/CodeBoarding/GeneratedOnBoardings)[](https://www.codeboarding.org/demo)[](mailto:contact@codeboarding.org)
+
+## Component Details
+
+This graph illustrates the architecture of the Content & Listing Management subsystem within the PRAW library, focusing on how it retrieves, iterates, and manages various types of Reddit content. The core functionality revolves around efficient listing generation and the handling of submissions, comments, and related data like drafts and polls. It interacts with the central Reddit Client for API access and leverages specialized components for listing generation, stream utilities, and specific Reddit object management.
+
+### Reddit Client
+The central entry point for interacting with the Reddit API, managing authentication and providing access to various Reddit entities.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.reddit.Reddit` (57:901)
+
+
+### Content & Listing Management
+Responsible for efficiently retrieving and iterating through various types of content listings from Reddit, such as hot, new, or top posts. It also provides utilities for real-time data streams and handles the creation, retrieval, and general management of Reddit submissions (posts) and comments, including drafts and poll data.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.models.listing.generator.ListingGenerator` (17:103)
+- `praw.praw.models.listing.domain.DomainListing` (14:25)
+- `praw.praw.models.listing.mixins.redditor.SubListing` (18:32)
+- `praw.praw.models.listing.mixins.redditor.RedditorListingMixin` (35:185)
+- `praw.praw.models.listing.mixins.subreddit.CommentHelper` (20:46)
+- `praw.praw.models.listing.mixins.subreddit.SubredditListingMixin` (49:73)
+- `praw.praw.models.listing.mixins.rising.RisingListingMixin` (17:34)
+- `praw.praw.models.listing.mixins.base.BaseListingMixin` (15:149)
+- `praw.praw.models.listing.mixins.submission.SubmissionListingMixin` (17:42)
+- `praw.praw.models.util` (10:190)
+- `praw.praw.models.comment_forest.CommentForest` (15:202)
+- `praw.praw.models.reddit.comment.Comment` (19:311)
+- `praw.praw.models.reddit.comment.CommentModeration` (314:350)
+- `praw.praw.models.reddit.more.MoreComments` (14:87)
+- `praw.praw.models.reddit.submission.Submission` (395:916)
+- `praw.praw.models.reddit.submission.SubmissionFlair` (40:90)
+- `praw.praw.models.reddit.submission.SubmissionModeration` (93:392)
+- `praw.praw.models.helpers.DraftHelper` (20:133)
+- `praw.praw.models.reddit.draft.Draft` (17:292)
+- `praw.praw.models.reddit.poll.PollData` (47:112)
+- `praw.praw.models.reddit.poll.PollOption` (11:44)
+
+
+### Listing Generators
+A core component responsible for iterating and fetching paginated lists of various Reddit objects.
+
+
+**Related Classes/Methods**:
+
+- `praw.models.listing.generator.ListingGenerator` (17:103)
+
+
+### Comment Objects
+Represents individual Reddit comments, providing methods for interaction and retrieval of related data.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.models.reddit.comment.Comment` (19:311)
+
+
+### Submission Objects
+Represents Reddit posts (submissions), offering functionalities for content manipulation and moderation.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.models.reddit.submission.Submission` (395:916)
+
+
+### Subreddit Objects
+Represents Reddit communities (subreddits), enabling content submission and moderation within them.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.models.reddit.subreddit.Subreddit` (full file reference)
+
+
+### User Objects
+Represents Reddit user accounts, providing access to user-specific content and profiles.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.models.reddit.redditor.Redditor` (21:409)
+
+
+### Inbox Manager
+Manages the authenticated user's Reddit inbox, allowing retrieval of messages, comment replies, and mentions.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.models.inbox.Inbox` (18:324)
+
+
+### Draft Management
+Provides utilities for creating and managing submission drafts.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.models.helpers.DraftHelper` (20:133)
+
+
+### Stream Utilities
+Offers helper functions for continuously streaming new Reddit content, such as comments or submissions.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.models.util.stream_generator` (36:163)
+
+
+### Listing Mixins
+Abstract classes providing common methods for fetching various types of listings (e.g., hot, new, top) across different Reddit entities.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.models.listing.mixins.base.BaseListingMixin` (15:149)
+- `praw.praw.models.listing.mixins.redditor.RedditorListingMixin` (35:185)
+- `praw.praw.models.listing.mixins.subreddit.SubredditListingMixin` (49:73)
+
+
+
+
+### [FAQ](https://github.com/CodeBoarding/GeneratedOnBoardings/tree/main?tab=readme-ov-file#faq)
\ No newline at end of file
diff --git a/.codeboarding/Development & Build Tools.md b/.codeboarding/Development & Build Tools.md
new file mode 100644
index 000000000..12e4a3c53
--- /dev/null
+++ b/.codeboarding/Development & Build Tools.md
@@ -0,0 +1,88 @@
+```mermaid
+graph LR
+ Pre_Push_Automation["Pre-Push Automation"]
+ Static_Word_Checks["Static Word Checks"]
+ Documentation_Checks["Documentation Checks"]
+ Active_Documentation_Management["Active Documentation Management"]
+ Version_Management["Version Management"]
+ Pre_Push_Automation -- "orchestrates" --> Static_Word_Checks
+ Pre_Push_Automation -- "orchestrates" --> Documentation_Checks
+ Pre_Push_Automation -- "utilizes" --> Version_Management
+```
+[](https://github.com/CodeBoarding/GeneratedOnBoardings)[](https://www.codeboarding.org/demo)[](mailto:contact@codeboarding.org)
+
+## Component Details
+
+This component comprises scripts and utilities primarily used for the development, testing, and release management of the PRAW library itself. It includes tools for static analysis, unit testing, and version control, and is not part of the library's runtime functionality.
+
+### Pre-Push Automation
+This component automates pre-push checks, including running static analysis (pre-commit, sphinx-build) and unit tests (pytest). It orchestrates the execution of these checks and reports their success or failure.
+
+
+**Related Classes/Methods**:
+
+- `praw.pre_push` (2:80)
+- `praw.pre_push.main` (58:98)
+- `praw.pre_push.run_static` (32:45)
+- `praw.pre_push.run_unit` (48:55)
+- `praw.pre_push.do_process` (10:29)
+
+
+### Static Word Checks
+This component is responsible for performing static analysis on the codebase, specifically checking for double syntax and 'noreturn' patterns within the code. It uses a dedicated checker class to encapsulate this logic.
+
+
+**Related Classes/Methods**:
+
+- `praw.tools.static_word_checks` (5:100)
+- `praw.tools.static_word_checks.main` (120:140)
+- `praw.tools.static_word_checks.StaticChecker` (8:117)
+- `praw.tools.static_word_checks.StaticChecker.run_checks` (75:117)
+- `praw.tools.static_word_checks.StaticChecker.check_for_double_syntax` (27:55)
+- `praw.tools.static_word_checks.StaticChecker.check_for_noreturn` (57:73)
+
+
+### Documentation Checks
+This component focuses on verifying the documentation, particularly by discovering and checking subclasses for proper documentation. It ensures consistency and completeness of the project's documentation.
+
+
+**Related Classes/Methods**:
+
+- `praw.tools.check_documentation` (5:70)
+- `praw.tools.check_documentation.main` (80:81)
+- `praw.tools.check_documentation.DocumentationChecker` (16:77)
+- `praw.tools.check_documentation.DocumentationChecker.check` (46:77)
+- `praw.tools.check_documentation.DocumentationChecker.discover_subclasses` (36:43)
+
+
+### Active Documentation Management
+This component manages the active documentation versions, primarily by fetching available versions. It likely supports processes related to deploying or updating documentation.
+
+
+**Related Classes/Methods**:
+
+- `praw.tools.set_active_docs` (5:80)
+- `praw.tools.set_active_docs.main` (32:90)
+- `praw.tools.set_active_docs.fetch_versions` (14:29)
+
+
+### Version Management
+This component handles the project's versioning, including managing unreleased changes, updating the changelog, incrementing development versions, and updating package version information. It ensures proper version control and release preparation.
+
+
+**Related Classes/Methods**:
+
+- `praw.tools.set_version` (5:100)
+- `praw.tools.set_version.main` (64:70)
+- `praw.tools.set_version.handle_unreleased` (32:33)
+- `praw.tools.set_version.handle_version` (36:40)
+- `praw.tools.set_version.add_unreleased_to_changelog` (15:29)
+- `praw.tools.set_version.increment_development_version` (43:61)
+- `praw.tools.set_version.valid_version` (107:112)
+- `praw.tools.set_version.update_changelog` (73:88)
+- `praw.tools.set_version.update_package` (91:104)
+
+
+
+
+### [FAQ](https://github.com/CodeBoarding/GeneratedOnBoardings/tree/main?tab=readme-ov-file#faq)
\ No newline at end of file
diff --git a/.codeboarding/PRAW Core & API Interaction.md b/.codeboarding/PRAW Core & API Interaction.md
new file mode 100644
index 000000000..76bef443a
--- /dev/null
+++ b/.codeboarding/PRAW Core & API Interaction.md
@@ -0,0 +1,133 @@
+```mermaid
+graph LR
+ RedditClientCore["RedditClientCore"]
+ ObjectTransformationLayer["ObjectTransformationLayer"]
+ ConfigurationManagement["ConfigurationManagement"]
+ ExceptionHandling["ExceptionHandling"]
+ UtilityFunctions["UtilityFunctions"]
+ RedditClientCore -- "loads configuration from" --> ConfigurationManagement
+ RedditClientCore -- "accesses settings from" --> ConfigurationManagement
+ RedditClientCore -- "uses for objectification" --> ObjectTransformationLayer
+ RedditClientCore -- "initializes" --> ObjectTransformationLayer
+ RedditClientCore -- "raises" --> ExceptionHandling
+ RedditClientCore -- "handles" --> ExceptionHandling
+ ObjectTransformationLayer -- "raises" --> ExceptionHandling
+ ObjectTransformationLayer -- "parses errors using" --> ExceptionHandling
+ ObjectTransformationLayer -- "uses for key conversion" --> UtilityFunctions
+ ConfigurationManagement -- "raises" --> ExceptionHandling
+```
+[](https://github.com/CodeBoarding/GeneratedOnBoardings)[](https://www.codeboarding.org/demo)[](mailto:contact@codeboarding.org)
+
+## Component Details
+
+This graph represents the core interaction layer of the PRAW library with the Reddit API. The main flow involves the `RedditClientCore` initiating API requests, which are then processed by the `ObjectTransformationLayer` to convert raw responses into structured Python objects. `ConfigurationManagement` provides necessary settings for the client, while `ExceptionHandling` ensures robust error management across these interactions. `UtilityFunctions` support various operations, including data transformation for consistency.
+
+### RedditClientCore
+This component serves as the central interface for interacting with the Reddit API. It manages the lifecycle of API interactions, including initialization, authentication, and dispatching various types of HTTP requests (GET, POST, PUT, DELETE, PATCH). It also integrates with other components to handle objectification of responses, rate limiting, and update checks, providing a comprehensive entry point for PRAW users.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.reddit.Reddit` (57:901)
+- `praw.praw.reddit.Reddit:read_only` (87:89)
+- `praw.praw.reddit.Reddit:__init__` (114:386)
+- `praw.praw.reddit.Reddit:_objectify_request` (435:469)
+- `praw.praw.reddit.Reddit:_prepare_objector` (479:525)
+- `praw.praw.reddit.Reddit:_prepare_prawcore` (527:546)
+- `praw.praw.reddit.Reddit:_prepare_trusted_prawcore` (548:564)
+- `praw.praw.reddit.Reddit:_prepare_untrusted_prawcore` (566:570)
+- `praw.praw.reddit.Reddit:_resolve_share_url` (572:580)
+- `praw.praw.reddit.Reddit:comment` (582:596)
+- `praw.praw.reddit.Reddit:delete` (598:617)
+- `praw.praw.reddit.Reddit:domain` (619:625)
+- `praw.praw.reddit.Reddit:get` (627:639)
+- `praw.praw.reddit.Reddit:info` (641:720)
+- `praw.praw.reddit.Reddit:patch` (722:741)
+- `praw.praw.reddit.Reddit:post` (743:789)
+- `praw.praw.reddit.Reddit:put` (791:808)
+- `praw.praw.reddit.Reddit:redditor` (810:819)
+- `praw.praw.reddit.Reddit:request` (821:876)
+- `praw.praw.reddit.Reddit:submission` (878:889)
+- `praw.praw.reddit.Reddit:username_available` (891:901)
+- `praw.praw.reddit.Reddit._check_for_update` (413:418)
+- `praw.praw.reddit.Reddit._check_for_async` (388:411)
+- `praw.praw.reddit.Reddit._handle_rate_limit` (420:433)
+- `praw.praw.reddit.Reddit._prepare_common_authorizer` (471:477)
+- `praw.models.auth.Auth` (11:125)
+- `praw.models.helpers.DraftHelper` (20:133)
+- `praw.models.front.Front` (17:32)
+- `praw.models.inbox.Inbox` (18:324)
+- `praw.models.helpers.LiveHelper` (136:238)
+- `praw.models.helpers.MultiredditHelper` (241:298)
+- `praw.models.mod_notes.RedditModNotes` (466:682)
+- `praw.models.redditors.Redditors` (26:104)
+- `praw.models.helpers.SubredditHelper` (301:353)
+- `praw.models.subreddits.Subreddits` (19:133)
+- `praw.models.user.User` (24:259)
+- `praw.models.reddit.comment.Comment` (19:311)
+- `praw.models.listing.domain.DomainListing` (14:25)
+- `praw.models.reddit.redditor.Redditor` (21:409)
+- `praw.models.reddit.submission.Submission` (395:916)
+
+
+### ObjectTransformationLayer
+This component is responsible for transforming raw JSON responses received from the Reddit API into structured Python objects that PRAW users can easily interact with. It also includes functionality for parsing and handling API-specific errors embedded within the responses and converting dictionary keys from camelCase to snake_case for Pythonic consistency.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.objector.Objector` (17:263)
+- `praw.praw.objector.Objector:check_error` (21:24)
+- `praw.praw.objector.Objector:parse_error` (27:48)
+- `praw.praw.objector.Objector:_objectify_dict` (59:201)
+- `praw.praw.objector.Objector:objectify` (203:263)
+
+
+### ConfigurationManagement
+This component is dedicated to loading, managing, and providing access to PRAW's configuration settings. It supports reading configurations from various sources, such as a 'praw.ini' file or environment variables, ensuring that the Reddit client is properly configured with necessary credentials and API parameters.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.config.Config` (27:173)
+- `praw.praw.config.Config:short_url` (74:83)
+- `praw.praw.config.Config:__init__` (85:103)
+- `praw.praw.config.Config:_fetch_default` (110:113)
+- `praw.praw.config.Config:_fetch_or_not_set` (115:123)
+- `praw.praw.config.Config:_initialize_attributes` (125:173)
+- `praw.praw.config.Config:_load_config` (45:71)
+- `praw.praw.config.Config:_config_boolean` (39:42)
+- `praw.praw.config.Config:_fetch` (105:108)
+
+
+### ExceptionHandling
+This component centralizes the definition and management of custom exceptions within PRAW. It provides a structured way to handle various error conditions, including client-side issues, Reddit API errors, and specific operational failures like media post failures or missing attributes, ensuring robust error reporting and recovery.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.exceptions.MediaPostFailed` (158:167)
+- `praw.praw.exceptions.RedditAPIException` (170:201)
+- `praw.praw.exceptions.ClientException` (74:75)
+- `praw.praw.exceptions.MissingRequiredAttributeException` (121:122)
+- `praw.praw.exceptions.RedditAPIException:parse_exception_list` (174:189)
+- `praw.praw.exceptions.RedditAPIException:__init__` (191:201)
+- `praw.praw.exceptions.RedditErrorItem` (18:71)
+- `praw.praw.exceptions.MediaPostFailed:__init__` (161:167)
+- `praw.praw.exceptions.WebSocketException.__init__` (149:155)
+
+
+### UtilityFunctions
+This component provides a collection of general-purpose utility functions that support various operations within PRAW. Specifically, it includes functions for string manipulation, such as converting dictionary keys from camelCase to snake_case, which is crucial for maintaining consistent naming conventions across the library's object model.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.util.snake` (6:19)
+- `praw.praw.util.snake:snake_case_keys` (16:22)
+- `praw.praw.util.snake:camel_to_snake` (11:13)
+
+
+
+
+### [FAQ](https://github.com/CodeBoarding/GeneratedOnBoardings/tree/main?tab=readme-ov-file#faq)
\ No newline at end of file
diff --git a/.codeboarding/Reddit Data Models.md b/.codeboarding/Reddit Data Models.md
new file mode 100644
index 000000000..98b4f9d92
--- /dev/null
+++ b/.codeboarding/Reddit Data Models.md
@@ -0,0 +1,172 @@
+```mermaid
+graph LR
+ PRAWBase_Component["PRAWBase Component"]
+ RedditBase_Component["RedditBase Component"]
+ Listing_Generation_Component["Listing Generation Component"]
+ Listing_Mixins_Component["Listing Mixins Component"]
+ Subreddit_Management_Component["Subreddit Management Component"]
+ Comment_Management_Component["Comment Management Component"]
+ Submission_Management_Component["Submission Management Component"]
+ Voting_Mechanism_Component["Voting Mechanism Component"]
+ Moderation_Mixin_Component["Moderation Mixin Component"]
+ Base_List_Component["Base List Component"]
+ RedditBase_Component -- "inherits from" --> PRAWBase_Component
+ Listing_Generation_Component -- "inherits from" --> PRAWBase_Component
+ Base_List_Component -- "inherits from" --> PRAWBase_Component
+ Subreddit_Management_Component -- "inherits from" --> RedditBase_Component
+ Comment_Management_Component -- "inherits from" --> RedditBase_Component
+ Submission_Management_Component -- "inherits from" --> RedditBase_Component
+ Listing_Mixins_Component -- "utilizes" --> Listing_Generation_Component
+ Listing_Mixins_Component -- "depends on" --> PRAWBase_Component
+ Subreddit_Management_Component -- "utilizes" --> Listing_Generation_Component
+ Voting_Mechanism_Component -- "applies to" --> RedditBase_Component
+ Moderation_Mixin_Component -- "applies to" --> RedditBase_Component
+ Moderation_Mixin_Component -- "provides moderation to" --> Comment_Management_Component
+ Moderation_Mixin_Component -- "provides moderation to" --> Submission_Management_Component
+```
+[](https://github.com/CodeBoarding/GeneratedOnBoardings)[](https://www.codeboarding.org/demo)[](mailto:contact@codeboarding.org)
+
+## Component Details
+
+This graph provides an overview of the Reddit Data Models subsystem in PRAW, which defines the foundational structure and common behaviors for various Reddit entities. It illustrates how core base classes like PRAWBase and RedditBase establish the blueprint for data representation, while specialized components manage specific Reddit objects such as subreddits, comments, and submissions. Mixin components integrate common functionalities like voting, moderation, and listing generation across different data models, ensuring consistent interaction with the Reddit API and efficient data handling.
+
+### PRAWBase Component
+This component serves as the foundational superclass for all models within the PRAW library. It provides core utilities such as safely adding arguments to dictionaries and a class method for parsing data into PRAWBase instances. It initializes instances with a Reddit object and optional initial data.
+
+
+**Related Classes/Methods**:
+
+- `praw.models.base.PRAWBase` (12:47)
+- `praw.models.base.PRAWBase._safely_add_arguments` (16:26)
+- `praw.models.base.PRAWBase.parse` (29:36)
+- `praw.models.base.PRAWBase.__init__` (38:47)
+
+
+### RedditBase Component
+Building upon PRAWBase, this component represents actual Reddit objects. It includes functionalities for parsing URLs, handling attribute access (fetching data if not already fetched), and defining equality/hashing for Reddit objects. It also provides methods for fetching data from the Reddit API and resetting attributes.
+
+
+**Related Classes/Methods**:
+
+- `praw.models.reddit.base.RedditBase` (16:90)
+- `praw.models.reddit.base.RedditBase._url_parts` (20:24)
+- `praw.models.reddit.base.RedditBase.__getattr__` (32:38)
+- `praw.models.reddit.base.RedditBase.__init__` (44:64)
+- `praw.models.reddit.base.RedditBase._fetch` (78:79)
+- `praw.models.reddit.base.RedditBase._fetch_data` (81:84)
+- `praw.models.reddit.base.RedditBase._reset_attributes` (86:90)
+
+
+### Listing Generation Component
+This component is responsible for generating and iterating through various Reddit listings, such as comments, submissions, or other content. It manages the fetching of batches of items from the Reddit API and handles pagination to provide a continuous stream of content.
+
+
+**Related Classes/Methods**:
+
+- `praw.models.listing.generator.ListingGenerator` (17:103)
+- `praw.models.listing.generator.ListingGenerator.__init__` (29:56)
+- `praw.models.listing.generator.ListingGenerator.__iter__` (58:60)
+- `praw.models.listing.generator.ListingGenerator.__next__` (62:73)
+- `praw.models.listing.generator.ListingGenerator._extract_sublist` (75:87)
+- `praw.models.listing.generator.ListingGenerator._next_batch` (89:103)
+
+
+### Listing Mixins Component
+This component provides a set of mixin classes that add common listing functionalities to various Reddit objects. It includes methods for retrieving controversial, hot, new, and top items, with support for time filters and argument preparation for API requests.
+
+
+**Related Classes/Methods**:
+
+- `praw.models.listing.mixins.base.BaseListingMixin` (15:149)
+- `praw.models.listing.mixins.base.BaseListingMixin._validate_time_filter` (21:30)
+- `praw.models.listing.mixins.base.BaseListingMixin._prepare` (32:37)
+- `praw.models.listing.mixins.base.BaseListingMixin.controversial` (39:72)
+- `praw.models.listing.mixins.base.BaseListingMixin.hot` (74:94)
+- `praw.models.listing.mixins.base.BaseListingMixin.new` (96:116)
+- `praw.models.listing.mixins.base.BaseListingMixin.top` (118:149)
+
+
+### Subreddit Management Component
+This component encapsulates functionalities related to managing subreddits, including retrieving subreddit information, moderating content, and handling subreddit-specific streams like comments and submissions. It also provides methods for managing subreddit relationships and stylesheets.
+
+
+**Related Classes/Methods**:
+
+- `praw.models.reddit.subreddit.Subreddit` (full file reference)
+- `praw.models.reddit.subreddit.Subreddit.__init__` (full file reference)
+- `praw.models.reddit.subreddit.Subreddit._fetch` (full file reference)
+- `praw.models.reddit.subreddit.Subreddit.search` (full file reference)
+- `praw.models.reddit.subreddit.SubredditModeration.log` (full file reference)
+- `praw.models.reddit.subreddit.SubredditModeration.unmoderated` (full file reference)
+- `praw.models.reddit.subreddit.SubredditStream.comments` (full file reference)
+- `praw.models.reddit.subreddit.SubredditStream.submissions` (full file reference)
+
+
+### Comment Management Component
+This component handles operations related to Reddit comments. It provides methods for initializing comment instances, extracting comment IDs from URLs, accessing comment replies, and refreshing comment attributes. It also includes moderation functionalities specific to comments.
+
+
+**Related Classes/Methods**:
+
+- `praw.models.reddit.comment.Comment` (19:311)
+- `praw.models.reddit.comment.Comment.id_from_url` (64:74)
+- `praw.models.reddit.comment.Comment.__init__` (143:163)
+- `praw.models.reddit.comment.Comment._fetch` (185:196)
+- `praw.models.reddit.comment.Comment.parent` (201:262)
+- `praw.models.reddit.comment.Comment.refresh` (264:311)
+- `praw.models.reddit.comment.CommentModeration.show` (336:350)
+
+
+### Submission Management Component
+This component manages Reddit submissions, providing functionalities for creating, retrieving, and moderating submissions. It includes methods for handling submission flair, setting contest mode, marking content as NSFW or spoiler, and managing sticky posts.
+
+
+**Related Classes/Methods**:
+
+- `praw.models.reddit.submission.Submission` (395:916)
+- `praw.models.reddit.submission.Submission.id_from_url` (452:483)
+- `praw.models.reddit.submission.Submission.__init__` (566:598)
+- `praw.models.reddit.submission.Submission._fetch` (710:723)
+- `praw.models.reddit.submission.SubmissionModeration.contest_mode` (115:137)
+- `praw.models.reddit.submission.SubmissionModeration.flair` (139:174)
+- `praw.models.reddit.submission.SubmissionModeration.nsfw` (176:194)
+- `praw.models.reddit.submission.SubmissionModeration.spoiler` (244:262)
+- `praw.models.reddit.submission.SubmissionModeration.sticky` (264:297)
+
+
+### Voting Mechanism Component
+This component provides the core functionality for users to interact with the voting system on Reddit content. It allows for upvoting, downvoting, and clearing votes on various votable objects like submissions and comments.
+
+
+**Related Classes/Methods**:
+
+- `praw.models.reddit.mixins.votable.VotableMixin` (8:92)
+- `praw.models.reddit.mixins.votable.VotableMixin._vote` (11:12)
+- `praw.models.reddit.mixins.votable.VotableMixin.clear_vote` (14:36)
+- `praw.models.reddit.mixins.votable.VotableMixin.downvote` (38:64)
+- `praw.models.reddit.mixins.votable.VotableMixin.upvote` (66:92)
+
+
+### Moderation Mixin Component
+This component provides a set of common moderation functionalities that can be applied to various 'Thing' objects (like comments and submissions) on Reddit. It includes methods for removing content and distinguishing posts.
+
+
+**Related Classes/Methods**:
+
+- `praw.models.reddit.mixins.thing_moderation.ThingModerationMixin` (10:120)
+- `praw.models.reddit.mixins.thing_moderation.ThingModerationMixin.remove` (full file reference)
+- `praw.models.reddit.mixins.thing_moderation.ThingModerationMixin.undistinguish` (full file reference)
+
+
+### Base List Component
+This component provides the foundational structure for various list-like objects within PRAW, such as lists of drafts, moderated items, redditors, or trophies. It extends `PRAWBase` to offer common functionalities for managing collections of Reddit entities.
+
+
+**Related Classes/Methods**:
+
+- `praw.models.list.base.BaseList` (15:54)
+
+
+
+
+### [FAQ](https://github.com/CodeBoarding/GeneratedOnBoardings/tree/main?tab=readme-ov-file#faq)
\ No newline at end of file
diff --git a/.codeboarding/Specialized Content Features.md b/.codeboarding/Specialized Content Features.md
new file mode 100644
index 000000000..4927e5414
--- /dev/null
+++ b/.codeboarding/Specialized Content Features.md
@@ -0,0 +1,204 @@
+```mermaid
+graph LR
+ Reddit_Client["Reddit Client"]
+ Live_Thread_System["Live Thread System"]
+ Multireddit_System["Multireddit System"]
+ Collection_System["Collection System"]
+ Base_API_Models["Base API Models"]
+ Content_Listing_Streaming["Content Listing & Streaming"]
+ Reddit_Entities["Reddit Entities"]
+ Exception_Handling["Exception Handling"]
+ Specialized_Content_Features["Specialized Content Features"]
+ Reddit_Client -- "initializes helpers for" --> Live_Thread_System
+ Reddit_Client -- "initializes helpers for" --> Multireddit_System
+ Reddit_Client -- "initializes helpers for" --> Collection_System
+ Reddit_Client -- "utilizes" --> Base_API_Models
+ Reddit_Client -- "creates instances of" --> Reddit_Entities
+ Reddit_Client -- "handles" --> Exception_Handling
+ Live_Thread_System -- "inherits from" --> Base_API_Models
+ Live_Thread_System -- "generates" --> Content_Listing_Streaming
+ Multireddit_System -- "inherits from" --> Base_API_Models
+ Multireddit_System -- "streams content via" --> Content_Listing_Streaming
+ Collection_System -- "inherits from" --> Base_API_Models
+ Collection_System -- "manages" --> Reddit_Entities
+ Content_Listing_Streaming -- "produces" --> Reddit_Entities
+ Specialized_Content_Features -- "encompasses" --> Live_Thread_System
+ Specialized_Content_Features -- "encompasses" --> Multireddit_System
+ Specialized_Content_Features -- "encompasses" --> Collection_System
+```
+[](https://github.com/CodeBoarding/GeneratedOnBoardings)[](https://www.codeboarding.org/demo)[](mailto:contact@codeboarding.org)
+
+## Component Details
+
+This graph illustrates the architecture of the PRAW library, focusing on how it manages various Reddit functionalities. The core `Reddit Client` component acts as the central entry point, handling API interactions and initializing helpers for specialized content types. These specialized content types, including `Live Thread System`, `Multireddit System`, and `Collection System`, are encapsulated within the `Specialized Content Features` component, providing dedicated interfaces for their unique structures and functionalities. All these systems leverage `Base API Models` for fundamental operations and interact with `Reddit Entities` to represent core Reddit objects. `Content Listing & Streaming` provides mechanisms for iterating and streaming data, while `Exception Handling` ensures robust error management across the library.
+
+### Reddit Client
+The central class for interacting with the Reddit API, responsible for initialization, configuration, request handling, and providing access to various Reddit entities.
+
+
+**Related Classes/Methods**:
+
+- `praw.reddit.Reddit` (57:901)
+- `praw.reddit.Reddit.__init__` (114:386)
+- `praw.reddit.Reddit._objectify_request` (435:469)
+- `praw.reddit.Reddit.request` (821:876)
+- `praw.reddit.Reddit.info` (641:720)
+- `praw.reddit.Reddit.post` (743:789)
+- `praw.reddit.Reddit.get` (627:639)
+- `praw.reddit.Reddit.delete` (598:617)
+- `praw.reddit.Reddit.patch` (722:741)
+- `praw.reddit.Reddit.put` (791:808)
+- `praw.reddit.Reddit.comment` (582:596)
+- `praw.reddit.Reddit.domain` (619:625)
+- `praw.reddit.Reddit.redditor` (810:819)
+- `praw.reddit.Reddit.submission` (878:889)
+- `praw.reddit.Reddit.username_available` (891:901)
+
+
+### Live Thread System
+This system encompasses all functionalities related to Reddit Live Threads, including their creation, retrieval, updates, contributor management, and streaming of live content.
+
+
+**Related Classes/Methods**:
+
+- `praw.models.helpers.LiveHelper` (136:238)
+- `praw.models.helpers.LiveHelper.__call__` (139:151)
+- `praw.models.helpers.LiveHelper.info` (183:223)
+- `praw.models.reddit.live.LiveThread` (261:471)
+- `praw.models.reddit.live.LiveThread.__init__` (375:392)
+- `praw.models.reddit.live.LiveThread._fetch` (394:399)
+- `praw.models.reddit.live.LiveThread.contrib` (284:295)
+- `praw.models.reddit.live.LiveThread.contributor` (298:313)
+- `praw.models.reddit.live.LiveThread.stream` (316:338)
+- `praw.models.reddit.live.LiveThread.__getitem__` (352:369)
+- `praw.models.reddit.live.LiveThread.discussions` (404:426)
+- `praw.models.reddit.live.LiveThread.updates` (446:471)
+- `praw.models.reddit.live.LiveContributorRelationship` (22:258)
+- `praw.models.reddit.live.LiveContributorRelationship.invite` (73:111)
+- `praw.models.reddit.live.LiveContributorRelationship.update` (174:215)
+- `praw.models.reddit.live.LiveContributorRelationship.update_invite` (217:258)
+- `praw.models.reddit.live.LiveThreadContribution` (474:582)
+- `praw.models.reddit.live.LiveThreadContribution.update` (523:582)
+- `praw.models.reddit.live.LiveUpdate` (700:792)
+- `praw.models.reddit.live.LiveUpdate.__init__` (743:780)
+- `praw.models.reddit.live.LiveUpdate._fetch` (788:792)
+- `praw.models.reddit.live.LiveUpdate.contrib` (724:736)
+- `praw.models.reddit.live.LiveUpdate.__setattr__` (782:786)
+- `praw.models.reddit.live.LiveThreadStream` (585:637)
+- `praw.models.reddit.live.LiveThreadStream.updates` (605:637)
+
+
+### Multireddit System
+This system manages Reddit Multireddits, providing functionalities for creating, modifying, and retrieving multireddit content, as well as streaming from them.
+
+
+**Related Classes/Methods**:
+
+- `praw.models.helpers.MultiredditHelper` (241:298)
+- `praw.models.helpers.MultiredditHelper.__call__` (244:253)
+- `praw.models.reddit.multi.Multireddit` (20:228)
+- `praw.models.reddit.multi.Multireddit.__init__` (96:104)
+- `praw.models.reddit.multi.Multireddit._fetch` (106:111)
+- `praw.models.reddit.multi.Multireddit.add` (120:135)
+- `praw.models.reddit.multi.Multireddit.copy` (137:161)
+- `praw.models.reddit.multi.Multireddit.remove` (176:191)
+- `praw.models.reddit.multi.Multireddit.stream` (72:94)
+- `praw.models.reddit.multi.Multireddit.sluggify` (55:69)
+
+
+### Collection System
+This system handles Reddit Collections, including their creation, content management, and moderation functionalities.
+
+
+**Related Classes/Methods**:
+
+- `praw.models.reddit.collections.Collection` (380:575)
+- `praw.models.reddit.collections.Collection.__init__` (454:484)
+- `praw.models.reddit.collections.Collection._fetch` (521:534)
+- `praw.models.reddit.collections.Collection.mod` (422:438)
+- `praw.models.reddit.collections.SubredditCollections` (291:377)
+- `praw.models.reddit.collections.SubredditCollections.__init__` (352:360)
+- `praw.models.reddit.collections.SubredditCollections.__call__` (316:350)
+- `praw.models.reddit.collections.SubredditCollections.mod` (303:314)
+- `praw.models.reddit.collections.CollectionModeration` (21:216)
+- `praw.models.reddit.collections.CollectionModeration.__init__` (32:39)
+- `praw.models.reddit.collections.CollectionModeration.add_post` (61:84)
+- `praw.models.reddit.collections.CollectionModeration.remove_post` (102:125)
+- `praw.models.reddit.collections.CollectionModeration.reorder` (127:147)
+- `praw.models.reddit.collections.CollectionModeration._post_fullname` (41:59)
+- `praw.models.reddit.collections.SubredditCollectionsModeration` (219:288)
+- `praw.models.reddit.collections.SubredditCollectionsModeration.__init__` (230:238)
+
+
+### Base API Models
+This component provides the fundamental building blocks and common methods for various PRAW models, such as base initialization, URL parsing, and generic data fetching mechanisms.
+
+
+**Related Classes/Methods**:
+
+- `praw.models.base.PRAWBase` (12:47)
+- `praw.models.base.PRAWBase.__init__` (38:47)
+- `praw.models.reddit.base.RedditBase` (16:90)
+- `praw.models.reddit.base.RedditBase.__init__` (44:64)
+- `praw.models.reddit.base.RedditBase._url_parts` (20:24)
+- `praw.models.reddit.base.RedditBase._fetch_data` (81:84)
+- `praw.models.reddit.base.RedditBase._fetch` (78:79)
+- `praw.models.reddit.base.RedditBase._reset_attributes` (86:90)
+- `praw.models.listing.mixins.subreddit.SubredditListingMixin` (49:73)
+- `praw.models.listing.mixins.subreddit.SubredditListingMixin.__init__` (67:73)
+
+
+### Content Listing & Streaming
+This component is responsible for generating iterable listings of Reddit content and providing mechanisms for streaming real-time data from various sources.
+
+
+**Related Classes/Methods**:
+
+- `praw.models.listing.generator.ListingGenerator` (17:103)
+- `praw.models.util.stream_generator` (36:163)
+- `praw.models.reddit.subreddit.SubredditStream` (full file reference)
+
+
+### Reddit Entities
+This component represents core Reddit entities such as Redditors (users) and Subreddits, encapsulating their properties and providing methods for interaction.
+
+
+**Related Classes/Methods**:
+
+- `praw.models.reddit.redditor.Redditor` (21:409)
+- `praw.models.reddit.subreddit.Subreddit` (full file reference)
+
+
+### Exception Handling
+This component defines and manages custom exceptions specific to the PRAW library, allowing for structured error handling within the application.
+
+
+**Related Classes/Methods**:
+
+- `praw.exceptions.ClientException` (74:75)
+
+
+### Specialized Content Features
+Manages specialized content types on Reddit, including Live Threads, Multireddits, and Collections. It provides dedicated interfaces for interacting with these unique content structures and their specific functionalities.
+
+
+**Related Classes/Methods**:
+
+- `praw.models.helpers.LiveHelper` (136:238)
+- `praw.models.reddit.live.LiveContributorRelationship` (22:258)
+- `praw.models.reddit.live.LiveThread` (261:471)
+- `praw.models.reddit.live.LiveThreadContribution` (474:582)
+- `praw.models.reddit.live.LiveThreadStream` (585:637)
+- `praw.models.reddit.live.LiveUpdate` (700:792)
+- `praw.models.reddit.live.LiveUpdateContribution` (640:697)
+- `praw.models.helpers.MultiredditHelper` (241:298)
+- `praw.models.reddit.multi.Multireddit` (20:228)
+- `praw.models.reddit.collections.CollectionModeration` (21:216)
+- `praw.models.reddit.collections.SubredditCollectionsModeration` (219:288)
+- `praw.models.reddit.collections.SubredditCollections` (291:377)
+- `praw.models.reddit.collections.Collection` (380:575)
+
+
+
+
+### [FAQ](https://github.com/CodeBoarding/GeneratedOnBoardings/tree/main?tab=readme-ov-file#faq)
\ No newline at end of file
diff --git a/.codeboarding/User & Community Management.md b/.codeboarding/User & Community Management.md
new file mode 100644
index 000000000..9b62cc9b0
--- /dev/null
+++ b/.codeboarding/User & Community Management.md
@@ -0,0 +1,172 @@
+```mermaid
+graph LR
+ RedditClientCore["RedditClientCore"]
+ UserAccountManagement["UserAccountManagement"]
+ RedditorInteraction["RedditorInteraction"]
+ SubredditManagement["SubredditManagement"]
+ ModerationTools["ModerationTools"]
+ SubredditWidgets["SubredditWidgets"]
+ ModmailConversations["ModmailConversations"]
+ SubredditContentManagement["SubredditContentManagement"]
+ ContentListingAndStreaming["ContentListingAndStreaming"]
+ RedditClientCore -- "initializes" --> UserAccountManagement
+ RedditClientCore -- "provides access to" --> UserAccountManagement
+ RedditClientCore -- "provides access to" --> RedditorInteraction
+ RedditClientCore -- "provides access to" --> SubredditManagement
+ RedditClientCore -- "provides access to" --> ModerationTools
+ UserAccountManagement -- "generates listings for" --> ContentListingAndStreaming
+ UserAccountManagement -- "interacts with" --> RedditorInteraction
+ RedditorInteraction -- "generates streams for" --> ContentListingAndStreaming
+ RedditorInteraction -- "is subject to moderation notes from" --> ModerationTools
+ SubredditManagement -- "generates streams for" --> ContentListingAndStreaming
+ SubredditManagement -- "is managed by" --> ModerationTools
+ SubredditManagement -- "manages" --> SubredditWidgets
+ SubredditManagement -- "handles modmail for" --> ModmailConversations
+ SubredditManagement -- "manages content aspects for" --> SubredditContentManagement
+ ModerationTools -- "generates moderation streams for" --> ContentListingAndStreaming
+ ModerationTools -- "applies to redditors" --> RedditorInteraction
+ ModerationTools -- "provides moderation capabilities for" --> SubredditManagement
+ SubredditWidgets -- "are managed by" --> SubredditManagement
+ ModmailConversations -- "are part of subreddit management" --> SubredditManagement
+ SubredditContentManagement -- "is managed by" --> SubredditManagement
+```
+[](https://github.com/CodeBoarding/GeneratedOnBoardings)[](https://www.codeboarding.org/demo)[](mailto:contact@codeboarding.org)
+
+## Component Details
+
+This comprehensive component provides all tools necessary for managing user accounts, interacting with individual Redditor profiles, and moderating subreddits. It covers user preferences, inbox management, subreddit creation, moderation tools (modmail, notes, rules, removal reasons, wiki pages, widgets, emojis), and relationships within communities.
+
+### RedditClientCore
+This component serves as the primary interface for interacting with the Reddit API, initializing core functionalities and providing access points to various Reddit resources.
+
+
+**Related Classes/Methods**:
+
+- `praw.reddit.Reddit` (57:901)
+- `praw.praw.models.front.Front` (17:32)
+- `praw.praw.models.auth.Auth` (11:125)
+
+
+### UserAccountManagement
+This component handles functionalities related to the authenticated user's account, including managing inbox messages, user preferences, and retrieving information about the user's contributions and moderation roles.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.models.inbox.Inbox` (18:324)
+- `praw.praw.models.user.User` (24:259)
+- `praw.models.preferences.Preferences` (14:204)
+
+
+### RedditorInteraction
+This component provides methods for interacting with individual Reddit users (Redditors), such as retrieving user profiles, managing friendships, and accessing user-specific content streams.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.models.redditors.Redditors` (26:104)
+- `praw.praw.models.reddit.redditor.Redditor` (21:409)
+- `praw.praw.models.reddit.redditor.RedditorStream` (412:457)
+- `praw.praw.models.reddit.user_subreddit.UserSubreddit` (14:78)
+
+
+### SubredditManagement
+This component manages core aspects of subreddits, including their creation and general properties.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.models.subreddits.Subreddits` (19:133)
+- `praw.praw.models.helpers.SubredditHelper` (301:353)
+- `praw.praw.models.reddit.subreddit.Subreddit` (200:350)
+- `praw.praw.models.reddit.subreddit.SubredditRelationship` (500:520)
+
+
+### ModerationTools
+This component encapsulates various tools and functionalities for subreddit moderators, including managing moderation notes, defining and enforcing rules, handling removal reasons, and managing moderation-related relationships.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.models.reddit.user_subreddit.UserSubredditModeration` (82:199)
+- `praw.praw.models.reddit.subreddit.ModeratorRelationship` (683:800)
+- `praw.praw.models.reddit.subreddit.SubredditModeration` (500:700)
+- `praw.praw.models.reddit.subreddit.SubredditModerationStream` (703:740)
+- `praw.praw.models.mod_notes.BaseModNotes` (22:271)
+- `praw.praw.models.mod_notes.RedditorModNotes` (274:367)
+- `praw.praw.models.mod_notes.SubredditModNotes` (370:463)
+- `praw.praw.models.mod_notes.RedditModNotes` (466:682)
+- `praw.praw.models.reddit.rules.Rule` (19:100)
+- `praw.praw.models.reddit.rules.SubredditRules` (189:314)
+- `praw.praw.models.reddit.rules.RuleModeration` (103:186)
+- `praw.praw.models.reddit.rules.SubredditRulesModeration` (317:413)
+- `praw.praw.models.reddit.removal_reasons.RemovalReason` (18:114)
+- `praw.praw.models.reddit.removal_reasons.SubredditRemovalReasons` (117:223)
+
+
+### SubredditWidgets
+This component manages the creation, modification, and display of various widgets on subreddit sidebars and other areas.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.models.reddit.widgets.SubredditWidgets` (177:361)
+- `praw.praw.models.reddit.widgets.Widget` (364:395)
+- `praw.praw.models.reddit.widgets.CustomWidget` (639:710)
+- `praw.praw.models.reddit.widgets.ModeratorsWidget` (894:933)
+- `praw.praw.models.reddit.widgets.RulesWidget` (623:640)
+- `praw.praw.models.reddit.widgets.SubredditWidgetsModeration` (283:390)
+- `praw.praw.models.reddit.widgets.ButtonWidget` (410:497)
+- `praw.praw.models.reddit.widgets.Calendar` (500:571)
+- `praw.praw.models.reddit.widgets.CommunityList` (574:636)
+- `praw.praw.models.reddit.widgets.IDCard` (713:748)
+- `praw.praw.models.reddit.widgets.ImageWidget` (751:820)
+- `praw.praw.models.reddit.widgets.Menu` (823:891)
+- `praw.praw.models.reddit.widgets.PostFlairWidget` (936:1000)
+- `praw.praw.models.reddit.widgets.TextArea` (1000:1090)
+
+
+### ModmailConversations
+This component handles the management of modmail conversations, allowing moderators to read, reply to, and manage messages within the modmail system.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.models.reddit.modmail.ModmailConversation` (28:325)
+- `praw.praw.models.reddit.modmail.ModmailAction` (328:329)
+- `praw.praw.models.reddit.modmail.ModmailMessage` (332:333)
+- `praw.praw.models.reddit.subreddit.Modmail` (20:100)
+
+
+### SubredditContentManagement
+This component manages content-related aspects within a subreddit, including flair, stylesheets, wiki pages, and emojis.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.models.reddit.subreddit.SubredditFlair` (200:350)
+- `praw.praw.models.reddit.subreddit.SubredditFlairTemplates` (353:490)
+- `praw.praw.models.reddit.subreddit.SubredditStylesheet` (563:680)
+- `praw.praw.models.reddit.subreddit.SubredditWiki` (743:780)
+- `praw.praw.models.reddit.wikipage.WikiPage` (146:314)
+- `praw.praw.models.reddit.wikipage.WikiPageModeration` (19:143)
+- `praw.praw.models.reddit.emoji.Emoji` (16:131)
+- `praw.praw.models.reddit.emoji.SubredditEmoji` (134:234)
+
+
+### ContentListingAndStreaming
+This component is responsible for generating iterable listings of Reddit content (like posts, comments, users, subreddits) and providing real-time streams of new content.
+
+
+**Related Classes/Methods**:
+
+- `praw.models.listing.generator.ListingGenerator` (17:103)
+- `praw.models.util.stream_generator` (36:163)
+- `praw.praw.models.reddit.subreddit.SubredditStream` (523:560)
+- `praw.praw.models.reddit.redditor.RedditorStream` (412:457)
+- `praw.praw.models.reddit.subreddit.SubredditModerationStream` (703:740)
+
+
+
+
+### [FAQ](https://github.com/CodeBoarding/GeneratedOnBoardings/tree/main?tab=readme-ov-file#faq)
\ No newline at end of file
diff --git a/.codeboarding/on_boarding.md b/.codeboarding/on_boarding.md
new file mode 100644
index 000000000..463ea0b3d
--- /dev/null
+++ b/.codeboarding/on_boarding.md
@@ -0,0 +1,190 @@
+```mermaid
+graph LR
+ PRAW_Core_API_Interaction["PRAW Core & API Interaction"]
+ Reddit_Data_Models["Reddit Data Models"]
+ Content_Listing_Management["Content & Listing Management"]
+ User_Community_Management["User & Community Management"]
+ Specialized_Content_Features["Specialized Content Features"]
+ Development_Build_Tools["Development & Build Tools"]
+ PRAW_Core_API_Interaction -- "communicates with" --> Reddit_Data_Models
+ PRAW_Core_API_Interaction -- "processes requests for" --> Content_Listing_Management
+ PRAW_Core_API_Interaction -- "processes requests for" --> User_Community_Management
+ PRAW_Core_API_Interaction -- "processes requests for" --> Specialized_Content_Features
+ Reddit_Data_Models -- "defines structure for" --> Content_Listing_Management
+ Reddit_Data_Models -- "defines structure for" --> User_Community_Management
+ Reddit_Data_Models -- "defines structure for" --> Specialized_Content_Features
+ Content_Listing_Management -- "utilizes" --> PRAW_Core_API_Interaction
+ Content_Listing_Management -- "generates" --> Reddit_Data_Models
+ User_Community_Management -- "utilizes" --> PRAW_Core_API_Interaction
+ User_Community_Management -- "operates on" --> Reddit_Data_Models
+ Specialized_Content_Features -- "utilizes" --> PRAW_Core_API_Interaction
+ Specialized_Content_Features -- "operates on" --> Reddit_Data_Models
+ Development_Build_Tools -- "analyzes" --> PRAW_Core_API_Interaction
+ Development_Build_Tools -- "tests" --> Reddit_Data_Models
+ click PRAW_Core_API_Interaction href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/praw/PRAW Core & API Interaction.md" "Details"
+ click Reddit_Data_Models href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/praw/Reddit Data Models.md" "Details"
+ click Content_Listing_Management href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/praw/Content & Listing Management.md" "Details"
+ click User_Community_Management href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/praw/User & Community Management.md" "Details"
+ click Specialized_Content_Features href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/praw/Specialized Content Features.md" "Details"
+ click Development_Build_Tools href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/praw/Development & Build Tools.md" "Details"
+```
+[](https://github.com/CodeBoarding/GeneratedOnBoardings)[](https://www.codeboarding.org/demo)[](mailto:contact@codeboarding.org)
+
+## Component Details
+
+The PRAW library provides a Pythonic interface to the Reddit API, enabling developers to interact with Reddit programmatically. The main flow involves a core API interaction component that handles requests and responses, utilizing data models to represent Reddit entities. Various management components then leverage this core and data models to handle specific functionalities like content listing, user interactions, community moderation, and specialized content features. Development tools support the library's maintenance and release processes.
+
+### PRAW Core & API Interaction
+The foundational layer of the PRAW library, managing core interaction with the Reddit API. It handles client configuration, request objectification, and the processing of API responses, including error handling. It ensures all communications with Reddit are properly authenticated and formatted.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.reddit.Reddit` (57:901)
+- `praw.praw.objector.Objector` (17:263)
+- `praw.praw.exceptions.MediaPostFailed` (158:167)
+- `praw.praw.exceptions.RedditAPIException` (170:201)
+- `praw.praw.config.Config` (27:173)
+- `praw.praw.util.snake` (6:19)
+
+
+### Reddit Data Models
+Provides the fundamental base classes and mixins that define the structure and common behaviors of various Reddit entities (like submissions, comments, users, and subreddits). It serves as the blueprint for how PRAW represents data received from the Reddit API, enabling consistent attribute access and basic functionalities across different object types.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.models.base.PRAWBase` (12:47)
+- `praw.praw.models.reddit.base.RedditBase` (16:90)
+- `praw.praw.models.reddit.mixins.votable.VotableMixin` (8:92)
+- `praw.praw.models.reddit.mixins.ThingModerationMixin` (10:120)
+- `praw.praw.models.list.base.BaseList` (15:54)
+
+
+### Content & Listing Management
+Responsible for efficiently retrieving and iterating through various types of content listings from Reddit, such as hot, new, or top posts. It also provides utilities for real-time data streams and handles the creation, retrieval, and general management of Reddit submissions (posts) and comments, including drafts and poll data.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.models.listing.generator.ListingGenerator` (17:103)
+- `praw.praw.models.listing.domain.DomainListing` (14:25)
+- `praw.praw.models.listing.mixins.redditor.SubListing` (18:32)
+- `praw.praw.models.listing.mixins.redditor.RedditorListingMixin` (35:185)
+- `praw.praw.models.listing.mixins.subreddit.CommentHelper` (20:46)
+- `praw.praw.models.listing.mixins.subreddit.SubredditListingMixin` (49:73)
+- `praw.praw.models.listing.mixins.rising.RisingListingMixin` (17:34)
+- `praw.praw.models.listing.mixins.base.BaseListingMixin` (15:149)
+- `praw.praw.models.listing.mixins.submission.SubmissionListingMixin` (17:42)
+- `praw.praw.models.util` (10:190)
+- `praw.praw.models.comment_forest.CommentForest` (15:202)
+- `praw.praw.models.reddit.comment.Comment` (19:311)
+- `praw.praw.models.reddit.comment.CommentModeration` (314:350)
+- `praw.praw.models.reddit.more.MoreComments` (14:87)
+- `praw.praw.models.reddit.submission.Submission` (395:916)
+- `praw.praw.models.reddit.submission.SubmissionFlair` (40:90)
+- `praw.praw.models.reddit.submission.SubmissionModeration` (93:392)
+- `praw.praw.models.helpers.DraftHelper` (20:133)
+- `praw.praw.models.reddit.draft.Draft` (17:292)
+- `praw.praw.models.reddit.poll.PollData` (47:112)
+- `praw.praw.models.reddit.poll.PollOption` (11:44)
+
+
+### User & Community Management
+This comprehensive component provides all tools necessary for managing user accounts, interacting with individual Redditor profiles, and moderating subreddits. It covers user preferences, inbox management, subreddit creation, moderation tools (modmail, notes, rules, removal reasons, wiki pages, widgets, emojis), and relationships within communities.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.models.front.Front` (17:32)
+- `praw.praw.models.inbox.Inbox` (18:324)
+- `praw.praw.models.auth.Auth` (11:125)
+- `praw.praw.models.user.User` (24:259)
+- `praw.praw.models.redditors.Redditors` (26:104)
+- `praw.praw.models.reddit.redditor.Redditor` (21:409)
+- `praw.praw.models.reddit.redditor.RedditorStream` (412:457)
+- `praw.praw.models.reddit.user_subreddit.UserSubreddit` (14:78)
+- `praw.praw.models.reddit.user_subreddit.UserSubredditModeration` (82:199)
+- `praw.praw.models.subreddits.Subreddits` (19:133)
+- `praw.praw.models.helpers.SubredditHelper` (301:353)
+- `praw.praw.models.reddit.subreddit.Subreddit` (200:350)
+- `praw.praw.models.reddit.subreddit.SubredditRelationship` (500:520)
+- `praw.praw.models.reddit.subreddit.SubredditStream` (523:560)
+- `praw.praw.models.reddit.subreddit.SubredditStylesheet` (563:680)
+- `praw.praw.models.reddit.subreddit.ModeratorRelationship` (683:800)
+- `praw.praw.models.reddit.subreddit.Modmail` (20:100)
+- `praw.praw.models.reddit.subreddit.SubredditFlair` (200:350)
+- `praw.praw.models.reddit.subreddit.SubredditFlairTemplates` (353:490)
+- `praw.praw.models.reddit.subreddit.SubredditModeration` (500:700)
+- `praw.praw.models.reddit.subreddit.SubredditModerationStream` (703:740)
+- `praw.praw.models.reddit.subreddit.SubredditWiki` (743:780)
+- `praw.praw.models.mod_notes.BaseModNotes` (22:271)
+- `praw.praw.models.mod_notes.RedditorModNotes` (274:367)
+- `praw.praw.models.mod_notes.SubredditModNotes` (370:463)
+- `praw.praw.models.mod_notes.RedditModNotes` (466:682)
+- `praw.praw.models.reddit.modmail.ModmailConversation` (28:325)
+- `praw.praw.models.reddit.modmail.ModmailAction` (328:329)
+- `praw.praw.models.reddit.modmail.ModmailMessage` (332:333)
+- `praw.praw.models.reddit.rules.Rule` (19:100)
+- `praw.praw.models.reddit.rules.SubredditRules` (189:314)
+- `praw.praw.models.reddit.rules.RuleModeration` (103:186)
+- `praw.praw.models.reddit.rules.SubredditRulesModeration` (317:413)
+- `praw.praw.models.reddit.removal_reasons.RemovalReason` (18:114)
+- `praw.praw.models.reddit.removal_reasons.SubredditRemovalReasons` (117:223)
+- `praw.praw.models.reddit.wikipage.WikiPage` (146:314)
+- `praw.praw.models.reddit.wikipage.WikiPageModeration` (19:143)
+- `praw.praw.models.reddit.emoji.Emoji` (16:131)
+- `praw.praw.models.reddit.emoji.SubredditEmoji` (134:234)
+- `praw.praw.models.reddit.widgets.SubredditWidgets` (177:361)
+- `praw.praw.models.reddit.widgets.Widget` (364:395)
+- `praw.praw.models.reddit.widgets.CustomWidget` (639:710)
+- `praw.praw.models.reddit.widgets.ModeratorsWidget` (894:933)
+- `praw.praw.models.reddit.widgets.RulesWidget` (623:640)
+- `praw.praw.models.reddit.widgets.SubredditWidgetsModeration` (283:390)
+- `praw.praw.models.reddit.widgets.ButtonWidget` (410:497)
+- `praw.praw.models.reddit.widgets.Calendar` (500:571)
+- `praw.praw.models.reddit.widgets.CommunityList` (574:636)
+- `praw.praw.models.reddit.widgets.IDCard` (713:748)
+- `praw.praw.models.reddit.widgets.ImageWidget` (751:820)
+- `praw.praw.models.reddit.widgets.Menu` (823:891)
+- `praw.praw.models.reddit.widgets.PostFlairWidget` (936:1000)
+- `praw.praw.models.reddit.widgets.TextArea` (1000:1090)
+
+
+### Specialized Content Features
+Manages specialized content types on Reddit, including Live Threads, Multireddits, and Collections. It provides dedicated interfaces for interacting with these unique content structures and their specific functionalities.
+
+
+**Related Classes/Methods**:
+
+- `praw.praw.models.helpers.LiveHelper` (136:238)
+- `praw.praw.models.reddit.live.LiveContributorRelationship` (22:258)
+- `praw.praw.models.reddit.live.LiveThread` (261:471)
+- `praw.praw.models.reddit.live.LiveThreadContribution` (474:582)
+- `praw.praw.models.reddit.live.LiveThreadStream` (585:637)
+- `praw.praw.models.reddit.live.LiveUpdate` (700:792)
+- `praw.praw.models.reddit.live.LiveUpdateContribution` (640:697)
+- `praw.praw.models.helpers.MultiredditHelper` (241:298)
+- `praw.praw.models.reddit.multi.Multireddit` (20:228)
+- `praw.praw.models.reddit.collections.CollectionModeration` (21:216)
+- `praw.praw.models.reddit.collections.SubredditCollectionsModeration` (219:288)
+- `praw.praw.models.reddit.collections.SubredditCollections` (291:377)
+- `praw.praw.models.reddit.collections.Collection` (380:575)
+
+
+### Development & Build Tools
+This component comprises scripts and utilities primarily used for the development, testing, and release management of the PRAW library itself. It includes tools for static analysis, unit testing, and version control, and is not part of the library's runtime functionality.
+
+
+**Related Classes/Methods**:
+
+- `praw.pre_push` (2:80)
+- `praw.tools.static_word_checks` (5:100)
+- `praw.tools.check_documentation` (5:70)
+- `praw.tools.set_active_docs` (5:80)
+- `praw.tools.set_version` (5:100)
+
+
+
+
+### [FAQ](https://github.com/CodeBoarding/GeneratedOnBoardings/tree/main?tab=readme-ov-file#faq)
\ No newline at end of file