This post has been de-listed
It is no longer included in search results and normal feeds (front page, hot posts, subreddit posts, etc). It remains visible only via the author's post history.
GitHub: https://github.com/Pyprohly/redditwarp
I’m happy to announce the release of a new tool for working with the Reddit API called RedditWarp. It’s a Python library that aims to be comprehensive, type-complete, and easy-to-use.
It features a well-designed programming interface that handles the complexities of the Reddit API in a way that is easy to remember, highly discoverable, and reduces cognitive load. It is static-type conscious, allowing you to create Reddit bots and programs in a type-safe manner. Model objects are fully typed with attribute names thoughtfully selected for a consistent programming experience. The docstrings of the API procedure methods detail the possible exception scenarios, saving you some trial and error. Access to low-level tools and components ensure flexibility, such as formal data structures to facilitate things like navigating comment trees and paginating through listings. Overall, RedditWarp is a complete and powerful tool for developers looking to build applications interacting with the Reddit API.
This is a full release, and I consider it to be stable, having features that are largely on par with PRAW. However, keep in mind that nobody has seen or used this library until today so it’s possible there could be loose ends. But in the three years of its development, I’ve redone pretty much all parts of the repository multiple times now and feel confident that everything is where it should be.
I know what you’re wondering: PRAW is good already, so why have I decided to reinvent a decade-old API wrapper? I started this project before the Reddit Developer Platform was announced, and I knew there was significant room for improvement in the current tooling landscape for Reddit bot making. One of the big pain points I experienced while working with PRAW was its streaming implementation, which I found frustrating to work with. As a result, I began making various contributions to the PRAW project while trying to improve its streaming implementation on the side. However, after delving deep into the codebase, I realised there were many more changes I would like to see integrated, such as removing lazy loading and adding typing to models. Unfortunately, incorporating all these changes into such an established project was not feasible.
This new library has been built from scratch and shares few similarities with any existing codebase. Those familiar with PRAW may find RedditWarp’s syntax verbose and foreign at first but I am confident that those making the switch will find it easy to do so. For a more detailed comparison of PRAW vs RedditWarp, see this document.
I hope that this library will prove useful to those who use it. If you have any questions, please do not hesitate to reach out to me. You can send me a direct message, create a post on r/redditdev, join the RedditWarp Discord guild (available through the repository links), or simply drop a comment here. RedditWarp is new and I’ll try my best to provide as much support as possible in this early phase.
Subreddit
Post Details
- Posted
- 1 year ago
- Reddit URL
- View post on reddit.com
- External URL
- reddit.com/r/redditdev/c...