awesome-repositories.com
Blog
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
Back to praw-dev/praw

Open-source alternatives to Praw

30 open-source projects similar to praw-dev/praw, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Praw alternative.

  • golang/oauth2golang avatar

    golang/oauth2

    5,872View on GitHub↗

    This is a Go library for obtaining, refreshing, and attaching OAuth 2.0 access tokens to HTTP requests. It provides a generic token source interface with interchangeable implementations for different OAuth 2.0 grant types, and wraps the Go net/http transport layer to automatically attach access tokens as Authorization headers on outgoing requests. The library supports the authorization code flow, generating consent page URLs and exchanging authorization codes for tokens. It also implements the device authorization grant for authentication on devices without a browser, and the resource owner p

    Go
    View on GitHub↗5,872
  • sferik/twittersferik avatar

    sferik/twitter

    4,577View on GitHub↗

    This project is a Ruby wrapper for the Twitter API, providing a programmatic interface to interact with the platform's REST and streaming endpoints. It serves as an API client for managing social content, users, and account activity. The library includes specialized tools for real-time data streaming, allowing the acquisition of live public posts, account events, and user activity. It differentiates itself with advanced media handling, such as chunked uploading for large files, and integrated traffic management to monitor rate limits and detect streaming stalls. Broadly, the project covers c

    Ruby
    View on GitHub↗4,577
  • discord-jda/jdadiscord-jda avatar

    discord-jda/JDA

    4,665View on GitHub↗

    JDA is a Java wrapper for the Discord API, providing a framework for building automated agents and integrating applications with the chat platform. It functions as both a REST API client for managing server entities and a gateway client that maintains persistent WebSocket connections for real-time state updates. The library features a comprehensive voice API module for managing audio streaming, voice channel connectivity, and soundboard integration. It also includes a specialized toolkit for interactive UI design, enabling the creation of slash commands, buttons, select menus, and modal input

    Javaapiapi-wrapperbot
    View on GitHub↗4,665

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Find more with AI search
  • d60/twikitd60 avatar

    d60/twikit

    4,038View on GitHub↗

    Twikit is a Python library and API wrapper designed for interacting with X (Twitter). It simulates browser requests and mimics private network traffic to enable programmatic access to the platform without requiring an official API key. The project focuses on social media automation and data extraction, featuring tools for scraping user profiles, trending topics, and chronological tweet histories. It includes a session manager that handles user authentication, two-factor authentication, and cookie persistence to maintain active account access. The library's capabilities cover a broad range of

    Pythonbotclientpython
    View on GitHub↗4,038
  • subzeroid/instagrapisubzeroid avatar

    subzeroid/instagrapi

    6,366View on GitHub↗
    Pythonapi-wrapperinstabotinstagram
    View on GitHub↗6,366
  • lepture/authliblepture avatar

    lepture/authlib

    5,346View on GitHub↗

    Authlib is a comprehensive Python framework for implementing OAuth 1.0, OAuth 2.0, and OpenID Connect clients and servers. It provides a complete toolkit for identity management, spanning the development of authorization servers, resource servers, and client-side integrations. The library distinguishes itself through a full implementation of the JOSE specifications, including JSON Web Tokens, Encryption, Signatures, and Keys. It features specialized capabilities for non-interactive authentication via service account assertion frameworks and a compliance-correction layer designed to handle ide

    Python
    View on GitHub↗5,346
  • spotipy-dev/spotipyspotipy-dev avatar

    spotipy-dev/spotipy

    5,450View on GitHub↗

    Spotipy is a Python client library for interacting with the Spotify Web API. It provides a programmatic interface to manage music data, user accounts, and media playback. The library implements a full OAuth 2.0 client capable of handling authorization codes, client credentials, and implicit grants. It includes a token manager that supports automated token refreshing and pluggable caching backends to maintain stateful sessions. The project covers music metadata retrieval and search, allowing for the lookup of artists, albums, and tracks via resource identifiers and URIs. It also provides capa

    Python
    View on GitHub↗5,450
  • dv8fromtheworld/jdaDV8FromTheWorld avatar

    DV8FromTheWorld/JDA

    4,663View on GitHub↗

    JDA is a Java library that serves as a Discord API wrapper, bot framework, and voice API client. It enables applications to interact with the Discord REST API and real-time gateway to build automated assistants, manage servers, and handle user interactions. The project includes a sharding manager to distribute gateway connections across multiple shards for scaling high-volume deployments. It also provides a UI component library for constructing interactive buttons, select menus, and modal forms within messages. Its capabilities cover voice and audio management, including audio streaming and

    Java
    View on GitHub↗4,663
  • googleapis/google-api-python-clientgoogleapis avatar

    googleapis/google-api-python-client

    8,863View on GitHub↗

    This project is a REST API client library and Google Cloud SDK component that integrates Python applications with Google services. It functions as a discovery-based API client, utilizing an OAuth 2.0 integration library to secure requests and verify identity through access tokens and service accounts. The library is distinguished by its use of discovery documents to dynamically generate clients at runtime. By parsing JSON metadata, it maps Python method calls to HTTP requests and builds interface-based resource models that mirror the hierarchical structure of the remote service. Its broader

    Python
    View on GitHub↗8,863
  • spring-attic/spring-security-oauthspring-attic avatar

    spring-attic/spring-security-oauth

    4,693View on GitHub↗

    This project is an OAuth security framework for Java web applications. It provides a set of tools for adding authentication and authorization to Spring applications using standardized delegated authorization protocols. The library implements both OAuth 1.0a and OAuth 2.0 standards. For OAuth 2.0, it includes implementations for both the client side, to request access tokens and consume protected resources, and the provider side, to issue access tokens and manage authorization grants. The framework covers API authorization workflows, securing communication between applications, and managing d

    Java
    View on GitHub↗4,693
  • inventree/inventreeinventree avatar

    inventree/InvenTree

    6,350View on GitHub↗

    InvenTree is an open-source inventory management platform built on Django, designed for tracking parts, stock levels, and supply chain operations through a web interface and REST API. The system uses barcodes—including QR codes, 1D barcodes, and Data Matrix codes—as primary identifiers for scanning, linking, and triggering inventory actions, and extends core functionality through a Python plugin framework supporting custom actions, UI panels, barcode handlers, and scheduled tasks. The platform distinguishes itself through a comprehensive plugin-based extensibility system that allows custom in

    Pythondjangohacktoberfestpython
    View on GitHub↗6,350
  • authlib/authlibauthlib avatar

    authlib/authlib

    5,346View on GitHub↗

    Authlib is a comprehensive Python library for building and integrating OAuth 1.0, OAuth 2.0, and OpenID Connect clients and servers. It provides a unified set of tools to manage authentication and authorization flows, allowing applications to either act as a client connecting to external identity providers or as a provider issuing tokens and managing user identities. The project distinguishes itself through a full implementation of the JOSE standards, offering a suite of cryptographic tools for generating, signing, encrypting, and validating JSON Web Tokens, Signatures, Encryption, and Keys.

    Pythondjangoflaskjose
    View on GitHub↗5,346
  • google/claspgoogle avatar

    google/clasp

    5,484View on GitHub↗

    clasp is a command-line interface for managing Google Apps Script projects, enabling developers to create, sync, and deploy scripts from a local development environment. It provides an alternative to the cloud-based script editor, allowing version control, offline editing, and integration with standard development workflows. The tool supports TypeScript transpilation, so developers can write type-annotated code that compiles to JavaScript for the Apps Script runtime. Authentication is handled via OAuth 2.0, and users can synchronize local files with remote projects using ignore patterns simil

    TypeScriptapps-scriptclijavascript
    View on GitHub↗5,484
  • lobsters/lobsterslobsters avatar

    lobsters/lobsters

    4,707View on GitHub↗

    Lobsters is a link aggregator platform and social news engine designed as a technical community forum. It serves as a threaded discussion board where users share external web links and engage in nested conversations and debates. The platform maintains a curated environment through an invitation-only membership model, restricting account creation to users with valid referral codes. It employs a vote-weighted ranking system and user reputation management to highlight high-quality technical content and trusted contributors. The system includes comprehensive community management tools, including

    Ruby
    View on GitHub↗4,707
  • thunderclient/thunder-client-supportthunderclient avatar

    thunderclient/thunder-client-support

    3,717View on GitHub↗

    Thunder Client is a REST API client extension for VS Code that functions as an HTTP request manager, testing tool, and mocking workspace. It allows users to send requests, organize them into collections, and manage API configurations directly within the editor. The project distinguishes itself through a command-line interface for executing automated test suites in CI/CD pipelines and a Git-based synchronization system for sharing request collections and environment configurations across teams. It also incorporates artificial intelligence to automate the conversion of API scripts during migrat

    apigraphqlhttpclient
    View on GitHub↗3,717
  • pygithub/pygithubPyGithub avatar

    PyGithub/PyGithub

    7,735View on GitHub↗

    PyGithub is a Python library that serves as an object-oriented wrapper for the GitHub REST API. It functions as a specialized client that translates API endpoints into a hierarchy of Python classes, allowing for the programmatic management of GitHub repositories, user profiles, and organizations. The library manages the serialization of requests and responses, converting JSON data into structured object attributes. It utilizes lazy-loading for property retrieval and employs generators to handle pagination when iterating over large remote datasets. This toolkit enables the automation of GitHu

    Python
    View on GitHub↗7,735
  • davidteather/tiktok-apidavidteather avatar

    davidteather/TikTok-Api

    6,455View on GitHub↗

    This project is an unofficial TikTok API client and Python library. It functions as a data scraper and API wrapper for programmatically retrieving public profile information and trending media from the TikTok platform. The library enables the extraction of user identity details and the retrieval of trending video content. It provides tools for social media automation, trend analysis, and content research.

    Pythonapidownload-tiktokshacktoberfest
    View on GitHub↗6,455
  • google/google-api-go-clientgoogle avatar

    google/google-api-go-client

    4,448View on GitHub↗

    This project is a collection of Go packages and a programmatic interface for interacting with Google services and Google Cloud resources via REST APIs. It functions as a client library and SDK that transforms raw HTTP requests into structured Go function calls. The library utilizes discovery-based client generation to create type-safe clients from API discovery documents. It separates the acquisition of authorization tokens from the request logic through a token-source based authentication model. The project covers identity management and authentication via OAuth 2.0, service accounts, and A

    Go
    View on GitHub↗4,448
  • makenotion/notion-sdk-jsmakenotion avatar

    makenotion/notion-sdk-js

    5,611View on GitHub↗

    This project is a JavaScript client library and SDK for interacting with the Notion REST API. It provides typed methods and utilities to programmatically manage pages, databases, and workspace resources within a Notion environment. The SDK includes tools for implementing OAuth 2.0 authorization flows to grant third-party application access to workspace content. It features mechanisms for handling cursor-based pagination via asynchronous iterators and implements exponential back-off retries to manage rate limits and transient server errors. The library covers a broad range of capabilities, in

    TypeScriptapiapi-clientjavascript
    View on GitHub↗5,611
  • github-tools/githubgithub-tools avatar

    github-tools/github

    3,728View on GitHub↗

    Octokit is a JavaScript API client and REST API wrapper designed for executing authenticated requests to GitHub from browser-based environments. It serves as a programmatic interface for managing repositories, issues, pull requests, and user profiles. The library provides a high-level wrapper that organizes API functionality into resource-specific namespaces. It implements an asynchronous promise interface and includes mechanisms for pagination-aware data fetching and rate-limit tracking to prevent service interruptions. The tool covers a broad range of administrative capabilities, including

    JavaScript
    View on GitHub↗3,728
  • rs/curliers avatar

    rs/curlie

    3,670View on GitHub↗

    Curlie is a terminal-based HTTP client and debugging tool used for executing network requests and interacting with REST APIs. It provides a command line interface for sending requests using simplified syntax, with a specific focus on interacting with JSON services. The tool distinguishes itself by converting simplified interactive requests into standard curl commands for external reproduction and sharing. It also features unbuffered data streaming to monitor server responses in real time as they arrive. The project covers a broad range of API testing capabilities, including request prototypi

    Go
    View on GitHub↗3,670
  • dodgepudding/wechat-php-sdkdodgepudding avatar

    dodgepudding/wechat-php-sdk

    4,410View on GitHub↗

    This project is a PHP implementation for automating messages, managing custom menus, and handling media uploads for the WeChat ecosystem. It serves as a social media API wrapper, an OAuth 2.0 client library, and a toolkit for enterprise messaging and payment integration. The library distinguishes itself by providing dedicated workflows for official account integration and enterprise management, including the coordination of corporate organizational structures and employee directories. It also includes specialized tools for marketing automation, such as the issuance of digital coupons and the

    PHP
    View on GitHub↗4,410
  • mrswitch/hello.jsMrSwitch avatar

    MrSwitch/hello.js

    4,627View on GitHub↗

    hello.js is a JavaScript REST API client and social media API wrapper designed for authenticating users and aggregating data across multiple social network providers. It provides a unified interface to standardize requests and response formats, allowing for consistent data retrieval from diverse external services. The project implements a secure OAuth2 handshake process that utilizes a proxy-based credential masking system to hide private API keys from the client side. It includes a token manager that handles the full authentication lifecycle, including scope-based permission mapping and an a

    JavaScript
    View on GitHub↗4,627
  • slack-go/slackslack-go avatar

    slack-go/slack

    4,948View on GitHub↗

    This is a Go client library for interacting with the Slack API, providing a programmatic interface to manage channels, users, and workspace settings. It functions as a bot framework and event handler, allowing for the development of automated assistants that respond to workspace activities. The library includes a dedicated Block Kit builder for constructing complex UI layouts, such as interactive elements, data tables, and visualizations, for rich messaging. It also provides a full implementation for managing user authentication and identity verification through OAuth2 and OpenID Connect. Br

    Gogogolangslack
    View on GitHub↗4,948
  • gam-team/gamGAM-team avatar

    GAM-team/GAM

    4,206View on GitHub↗

    GAM is a command-line tool for administering Google Workspace and Cloud Identity. It translates command-line arguments into structured API calls, enabling administrators to manage users, groups, organizational units, and domain settings across a Google Workspace environment. The tool handles authentication through OAuth2 flows, service accounts, and workload identity federation, and supports multi-tenant configurations for managing multiple domains or cloud projects from a single installation. GAM distinguishes itself through its batch processing and automation capabilities. It can process la

    Pythongamgooglegoogle-admin-sdk
    View on GitHub↗4,206
  • binance/binance-connector-pythonbinance avatar

    binance/binance-connector-python

    2,755View on GitHub↗

    Binance Connector Python is a client library that provides programmatic access to the Binance cryptocurrency exchange, enabling automated trading and asset management across spot, margin, futures, and options markets. The library wraps the exchange's REST and WebSocket APIs into a Python interface with type-hinted methods, HMAC and RSA authentication, and a unified request-response pipeline for consistent error handling and rate limiting. The connector supports a broad range of exchange operations beyond core trading, including sub-account management, wallet operations, and algorithmic order

    Pythonbinance-apiconnectorcrypto
    View on GitHub↗2,755
  • octokit/octokit.jsoctokit avatar

    octokit/octokit.js

    7,795View on GitHub↗

    Octokit.js is a GitHub API SDK used to interact with GitHub via REST and GraphQL interfaces. It serves as a client for executing typed queries and mutations, managing authenticated REST requests, and handling signed webhooks across Node.js, Deno, and browser environments. The library features a plugin-based request pipeline and an adapter-based HTTP client, allowing the interception of requests and responses across different runtimes. It employs strategy-based authentication to separate credential management from request logic, supporting static tokens, OAuth flows, and GitHub App installatio

    TypeScriptgithubhacktoberfestjavascript
    View on GitHub↗7,795
  • sooperset/mcp-atlassiansooperset avatar

    sooperset/mcp-atlassian

    4,330View on GitHub↗

    mcp-atlassian is a tool that connects Atlassian project data to AI assistants using the Model Context Protocol. It provides a standardized tool-calling interface that enables AI assistants to interact directly with project data and documentation. The project supports multi-tenant environments and diverse hosting scenarios, including cloud and on-premise deployments. It implements multiple authentication methods such as OAuth 2.0, API tokens, and personal access tokens, and can route traffic through configurable HTTP, HTTPS, or SOCKS proxies to meet corporate security requirements. Its capabi

    Pythonatlassianconfluencejira
    View on GitHub↗4,330
  • dimillian/redditosDimillian avatar

    Dimillian/RedditOS

    4,031View on GitHub↗

    RedditOS is a native macOS social media application and Reddit API wrapper. It serves as a desktop client for browsing and interacting with Reddit community discussions and social feeds. The project is implemented as a SwiftUI Reddit client, utilizing a declarative framework to render social media content specifically for the macOS operating system. The application provides capabilities for Reddit content consumption, social media thread management, and general desktop browsing of community discussions.

    Swiftmacosredditswift
    View on GitHub↗4,031
  • corcel/corcelcorcel avatar

    corcel/corcel

    4,780View on GitHub↗

    Corcel transforms a remote WordPress site into a local data source by wrapping its REST API in an object-relational mapper. As a headless CMS bridge, it synchronizes remote posts, pages, users, and options into local models, enabling offline querying and manipulation from external PHP applications. The library uses pluggable adapters to fetch different WordPress resource types and a schema-based translation layer that converts WordPress post types and fields into local definitions. It validates user credentials against a remote WordPress database and integrates with the host framework’s authe

    PHPcorceleloquenthacktoberfest
    View on GitHub↗4,780