Browse free open source Python Libraries and projects below. Use the toggles on the left to filter open source Python Libraries by OS, license, language, programming language, and project status.

  • $300 Free Credits to Build on Google Cloud Icon
    $300 Free Credits to Build on Google Cloud

    New customers can spin up VMs, build with AI, and query data at no cost.

    Put your $300 in credit toward real workloads, then keep building with free monthly usage for 20+ products. No commitment and no charge until you upgrade.
    Start Free
  • Paessler: Easy to Use With Enterprise Power. Free Trial Icon
    Paessler: Easy to Use With Enterprise Power. Free Trial

    A low-code dashboard makes monitoring intuitive for any admin, while scripting and custom sensors give experts full control.

    You shouldn't have to choose between a monitoring tool that's easy to use and one that's powerful enough for a complex environment. PRTG's low-code interface lets any admin build dashboards, set alerts and monitor devices without scripting, while custom sensors and full API access are there when your team needs deeper control. One platform, no compromise. Download a free 30-day trial now.
    Get Free Download
  • 1
    ModernGL

    ModernGL

    Modern OpenGL binding for Python

    ModernGL is a Python wrapper over OpenGL, designed to simplify the creation of high-performance, modern graphics applications. It provides an intuitive API for rendering 2D and 3D graphics, making it accessible to both beginners and experienced developers. ModernGL is suitable for applications such as games, simulations, and data visualizations.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 2
    NeuMan

    NeuMan

    Neural Human Radiance Field from a Single Video (ECCV 2022)

    NeuMan is a reference implementation that reconstructs both an animatable human and its background scene from a single monocular video using neural radiance fields. It supports novel view and novel pose synthesis, enabling compositional results like transferring reconstructed humans into new scenes. The pipeline separates human/body and environment, learning consistent geometry and appearance to support animation. Demos showcase sequences such as dance and handshake, and the code provides guidance for running evaluations and rendering. As a research release, it serves both as a baseline and as a starting point for work on human-centric NeRFs. The emphasis is on practical reconstruction quality from minimal capture setups. Compositional outputs to blend humans and backgrounds. Novel view and novel pose synthesis from learned radiance fields.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 3
    PaperSpine

    PaperSpine

    Motivation-driven skill for learning from strong academic papers

    PaperSpine is a motivation-driven writing skill suite for academic papers, reports, reviews, and technical manuscripts. It is built for AI tools such as Codex, Claude Code, and OpenClaw, where the agent can follow structured writing workflows. The project asks the agent to study target formats and strong examples before drafting or revising. It emphasizes the central motivation of a paper, helping writers connect claims, structure, evidence, citations, and revisions into a coherent argument. The suite includes specialized skills for research, citation, rewriting, LaTeX, auditing, translation, humanization, and updates. It is best suited for users who need format-aware, evidence-aware academic writing support rather than generic text generation.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 4
    PerfKit Benchmarker

    PerfKit Benchmarker

    PerfKit Benchmarker (PKB) contains a set of benchmarks

    PerfKitBenchmarker is an open-source benchmarking framework designed to measure and compare the performance of cloud infrastructure across multiple providers in a consistent and reproducible way. It allows users to evaluate metrics such as latency, throughput, provisioning time, and system performance using a standardized set of benchmarks. The tool supports a wide range of environments, including major cloud platforms, Kubernetes clusters, and even local hardware, making it highly versatile for performance analysis. It simplifies the process of running complex benchmarks by providing unified command-line workflows that handle resource provisioning, execution, and result collection. The framework includes a comprehensive set of predefined benchmarks covering areas such as compute, storage, networking, and distributed systems workloads. It is widely used by researchers, engineers, and organizations to evaluate cloud architectures and make informed infrastructure decisions.
    Downloads: 1 This Week
    Last Update:
    See Project
  • Custom VMs From 1 to 96 vCPUs With 99.95% Uptime Icon
    Custom VMs From 1 to 96 vCPUs With 99.95% Uptime

    General-purpose, compute-optimized, or GPU/TPU-accelerated. Built to your exact specs.

    Live migration and automatic failover keep workloads online through maintenance. One free e2-micro VM every month.
    Start Free
  • 5
    PyJNIus

    PyJNIus

    Access Java classes from Python

    Pyjnius is a Python library for accessing Java classes. A Python module to access Java classes as Python classes using the Java Native Interface (JNI). Warning: the pypi name is now pyjnius instead of jnius. When you use autoclass, it will discover all the methods and fields of the class and resolve them. You can use the signatures method of JavaMethod and JavaMultipleMethod, to inspect the discovered signatures of a method of an object.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 6
    PyTensor

    PyTensor

    Python library for defining and optimizing mathematical expressions

    PyTensor is a fork of Aesara, a Python library for defining, optimizing, and efficiently evaluating mathematical expressions involving multi-dimensional arrays. PyTensor is based on Theano, which has been powering large-scale computationally intensive scientific investigations since 2007. A hackable, pure-Python codebase. Extensible graph framework is suitable for rapid development of custom operators and symbolic optimizations. Implements an extensible graph transpilation framework that currently provides compilation via C, JAX, and Numba. Based on one of the most widely-used Python tensor libraries: Theano.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 7
    Python for OSINT

    Python for OSINT

    In this repository you will find sample code files for each day

    Python for OSINT: 21-Day Course is a beginner-oriented training repository focused on automating repetitive open-source intelligence tasks with Python. It accompanies a free course PDF and provides sample code for lessons organized across three weeks. Topics progress from basic syntax and command-line tools to HTTP requests, APIs, JSON, CSV, databases, scraping, regular expressions, proxies, and file handling. Later lessons cover domain research, document generation, charts, maps, web archives, dates, and simple web applications. The course is designed for investigators and researchers rather than people seeking comprehensive software-engineering training. Exercises emphasize modifying working examples and applying them to practical research tasks. Current instructions recommend GitHub Codespaces or an Ubuntu-based environment for running the examples.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 8
    Rasa

    Rasa

    Open source machine learning framework to automate text conversations

    Rasa is an open source machine learning framework to automate text-and voice-based conversations. With Rasa, you can build contextual assistants on Facebook Messenger, Slack, Google Hangouts, Webex Teams, Microsoft Bot Framework, Rocket.Chat, Mattermost, Telegram, and Twilio or on your own custom conversational channels. Rasa helps you build contextual assistants capable of having layered conversations with lots of back-and-forths. In order for a human to have a meaningful exchange with a contextual assistant, the assistant needs to be able to use context to build on things that were previously discussed. Rasa enables you to build assistants that can do this in a scalable way. Rasa uses Poetry for packaging and dependency management. If you want to build it from the source, you have to install Poetry first. By default, Poetry will try to use the currently activated Python version to create the virtual environment for the current project automatically.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 9
    Sparse Attention

    Sparse Attention

    "Generating Long Sequences with Sparse Transformers" examples

    Sparse Attention is OpenAI’s code release for the Sparse Transformer model, introduced in the paper Generating Long Sequences with Sparse Transformers. It explores how modifying the self-attention mechanism with sparse patterns can reduce the quadratic scaling of standard transformers, making it possible to model much longer sequences efficiently. The repository provides implementations of sparse attention layers, training code, and evaluation scripts for benchmark datasets. It highlights both fixed and learnable sparsity patterns that trade off computational cost and model expressiveness. By enabling tractable training on longer contexts, the project opened the door to applications in large-scale text and image generation. Though archived, it remains a key reference for efficient transformer research, influencing many later architectures that aim to extend sequence length while reducing compute.
    Downloads: 1 This Week
    Last Update:
    See Project
  • Cut Data Warehouse Costs by 54% Icon
    Cut Data Warehouse Costs by 54%

    Easily migrate from Snowflake, Redshift, or Databricks with free tools.

    BigQuery delivers 54% lower TCO with exabyte scale and flexible pricing. Free migration tools handle the SQL translation automatically.
    Start Free
  • 10
    Strawberry GraphQL

    Strawberry GraphQL

    A GraphQL library for Python that leverages type annotations

    Python GraphQL library based on dataclasses. Strawberry's friendly API allows to create GraphQL API rather quickly, the debug server makes it easy to quickly test and debug. Django and ASGI support allow having your API deployed in production in a matter of minutes. The quick start method provides a server and CLI to get going quickly. Strawberry comes with a mypy plugin that enables statically type-checking your GraphQL schema. A Django view is provided for adding a GraphQL endpoint to your application. To support graphql Subscriptions over WebSockets you need to provide a WebSocket enabled server. Create a GraphQL schema defining a User type and a single query field user that will return a hardcoded user.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 11
    Think Bayes 2

    Think Bayes 2

    Text and code for the second edition of Think Bayes, by Allen Downey

    Think Bayes 2 is the companion repository for the second edition of Allen B. Downey’s introduction to Bayesian statistics. It teaches Bayesian reasoning through computational methods instead of relying mainly on symbolic mathematics. Each chapter is presented as a Jupyter notebook where readers can study the text, run examples, and complete exercises. Separate solution materials help learners check their work and explore alternative approaches. The lessons cover probability distributions, Bayesian updating, estimation, prediction, comparison, and decision-making. Notebooks can run in Google Colab or be downloaded for local use. The repository also contains book sources, supporting code, and environment files for reproducible study.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 12
    Unet

    Unet

    Source code for unet-pytorch, which can train its own model

    Unet-pytorch is a PyTorch implementation of U-Net for semantic segmentation workflows. The repository is built around training, prediction, and mIoU evaluation for VOC-style segmentation data and medical-style datasets. It includes scripts for general training, medical dataset training, prediction, annotation handling, model summaries, and evaluation. The project supports multiple backbones, data processing utilities, extensive comments, and adjustable training parameters. Its README notes that U-Net is better suited to datasets with fewer features and shallow visual structures, such as medical image segmentation, rather than complex VOC-style scenes. It is useful for developers and students who want a clear U-Net implementation for segmentation experiments, custom masks, and biomedical-style image analysis.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 13
    Union Pandera

    Union Pandera

    Light-weight, flexible, expressive statistical data testing library

    The open-source framework for precision data testing for data scientists and ML engineers. Pandera provides a simple, flexible, and extensible data-testing framework for validating not only your data but also the functions that produce them. A simple, zero-configuration data testing framework for data scientists and ML engineers seeking correctness. Access a comprehensive suite of built-in tests, or easily create your own validation rules for your specific use cases. Validate the functions that produce your data by automatically generating test cases for them. Integrate seamlessly with the Python ecosystem. Overcome the initial hurdle of defining a schema by inferring one from clean data, then refine it over time. Identify the critical points in your data pipeline, and validate data going in and out of them. Build confidence in the quality of your data by defining schemas for complex data objects.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 14
    Watchdog

    Watchdog

    Python library and shell utilities to monitor filesystem events

    Python API library and shell utilities to monitor file system events. A simple program that uses watchdog to monitor directories specified as command-line arguments and logs events generated. Watchdog comes with an optional utility script called watchmedo. Please type watchmedo --help at the shell prompt to know more about this tool. You can use the shell-command subcommand to execute shell commands in response to events. watchmedo can read tricks.yaml files and execute tricks within them in response to file system events. Tricks are actually event handlers that subclass watchdog.tricks.Trick and are written by plugin authors. Trick classes are augmented with a few additional features that regular event handlers don't need. The directory containing the tricks.yaml file will be monitored. Each trick class is initialized with its corresponding keys in the tricks.yaml file as arguments and events are fed to an instance of this class as they arrive.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 15
    aws-devops-zero-to-hero

    aws-devops-zero-to-hero

    AWS zero to hero repo for devops engineers to learn AWS in 30 Days

    aws-devops-zero-to-hero is a 30-day AWS learning roadmap aimed squarely at DevOps engineers who want both conceptual understanding and hands-on projects. The README is structured as a day-by-day syllabus, starting with “Day 1: Introduction to AWS” and moving through IAM, EC2, VPC networking, security, DNS (Route 53), storage (S3), and many other core services. Each day mixes explanation with at least one concrete project or lab, such as deploying applications on EC2, designing secure VPCs, setting up CI/CD pipelines, or configuring CloudWatch monitoring. Later in the curriculum, you move into topics like CloudFormation, CodeCommit/CodePipeline/CodeBuild/CodeDeploy, Terraform on AWS, CloudTrail and Config for compliance, Elastic Load Balancing, and cloud migration strategies. A full day is dedicated to “500 AWS interview questions and answers,” which makes this repo double as an interview prep resource as well as a skills builder.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 16
    backtrader

    backtrader

    Python Backtesting library for trading strategies

    backtrader is a Python framework for developing, backtesting, and running trading strategies. Its Cerebro engine coordinates strategies, data feeds, brokers, indicators, analyzers, and execution. Developers can combine multiple strategies, instruments, and timeframes while resampling or replaying market data. The framework includes a large indicator library, custom indicator support, analyzers, position sizing, commissions, and trading calendars. Its broker simulation supports market, limit, stop, trailing, OCO, and bracket-style orders along with slippage and volume filling. Backtrader can also work with live data and brokerage integrations and provides integrated charting for strategy analysis.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 17
    django-import-export

    django-import-export

    Django application and library for importing and exporting data

    django-import-export is a Django application and library for importing and exporting data with included admin integration. Support multiple formats (Excel, CSV, JSON, and everything else that tablib supports) Admin integration for importing. Preview import changes. Admin integration for exporting. Export data respecting admin filters. By default all records will be imported, even if no changes are detected. This can be changed setting the skip_unchanged option. Also, the report_skipped option controls whether skipped records appear in the import Result object, and if using the admin whether skipped records will show in the import preview page. Not all data can be easily extracted from an object/model attribute. In order to turn complicated data model into a (generally simpler) processed data structure on export, dehydrate_<fieldname> method should be defined.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 18
    mimic

    mimic

    Intercept any app, then call it from Python like a library

    Mimic is a Python tool that turns captured mobile application traffic into an editable client library. It records requests through mitmproxy, extracts stable authentication values, and uses an AI assistant to generate named Python methods for observed endpoints. Generated clients are ordinary source files built on mimic.App, so developers can inspect and modify them directly. The system can preserve request templates and model multi-step API flows in which one call supplies data for another. Its command-line workflow checks prerequisites, records traffic, lists captured hosts, and prepares reusable sessions. The current documentation focuses on routing iPhone traffic through a Mac-hosted proxy. Mimic is intended for applications and accounts the user is authorized to inspect and automate.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 19
    nuwa-skill

    nuwa-skill

    Mental models, decision heuristics, expressing DNA

    nuwa-skill is an AI-oriented project focused on defining, managing, and executing modular “skills” that can be used by intelligent agents or automation systems. It provides a framework for organizing capabilities into reusable units that can be invoked dynamically depending on context or user input. The project is designed to integrate with AI systems, enabling them to perform structured tasks such as data retrieval, processing, or interaction with external services. It emphasizes modularity and extensibility, allowing developers to create new skills and plug them into the system without disrupting existing functionality. Nuwa Skill also supports orchestration, enabling multiple skills to work together to accomplish more complex objectives. The architecture is typically designed for flexibility, making it suitable for applications in conversational AI, automation, or intelligent assistants. Overall, it serves as a foundation for building scalable and extensible AI-driven systems.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 20
    parallel-ssh

    parallel-ssh

    Asynchronous parallel SSH client library.

    parallel-ssh is an asynchronous parallel SSH library designed for large-scale automation. It differentiates itself from alternatives, other libraries and higher-level frameworks like Ansible or Chef in several ways.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 21
    pyCraft

    pyCraft

    Minecraft-client networking library in Python

    Minecraft Python Client Library. This project aims to be a modern, Python3-compatible, well-documented library for communication with a Minecraft server. Although pyCraft is compatible any supported server, only a subset of all packets are currently decoded or encoded by the library: those necessary to remain connected to the server, those used for chat, and some others.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 22
    spaCy

    spaCy

    Industrial-strength Natural Language Processing (NLP)

    spaCy is a library built on the very latest research for advanced Natural Language Processing (NLP) in Python and Cython. Since its inception it was designed to be used for real world applications-- for building real products and gathering real insights. It comes with pretrained statistical models and word vectors, convolutional neural network models, easy deep learning integration and so much more. spaCy is the fastest syntactic parser in the world according to independent benchmarks, with an accuracy within 1% of the best available. It's blazing fast, easy to install and comes with a simple and productive API.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 23
    urllib3

    urllib3

    Python HTTP library with thread-safe connection pooling

    urllib3 is a powerful, user-friendly HTTP client for Python. Much of the Python ecosystem already uses urllib3 and you should too. Thread safety, connection pooling. Client-side TLS/SSL verification. File uploads with multipart encoding. Helpers for retrying requests and dealing with HTTP redirects. Support for gzip, deflate, brotli, and zstd encoding. Proxy support for HTTP and SOCKS. 100% test coverage. Professional support for urllib3 is available as part of the Tidelift Subscription. Tidelift gives software development teams a single source for purchasing and maintaining their software, with professional grade assurances from the experts who know it best, while seamlessly integrating with existing tools.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 24
    zpdf

    zpdf

    Zero-copy PDF text extraction library written in Zig

    zpdf is a high-performance PDF text extraction library written in Zig that focuses on speed, low overhead, and modern parsing techniques. It leans heavily on memory-mapped file reading and zero-copy patterns where possible, so it can scan large PDFs without repeatedly copying data around in memory. The library supports streaming extraction using efficient arena allocation, making it well suited for workloads that need to process big documents quickly or in batches. It implements multiple PDF decompression filters and handles common font encoding pathways, which are essential for turning raw PDF content streams into readable text. It also understands both classic cross-reference tables and newer cross-reference streams, including PDF 1.5+ features, and it offers configurable strict vs permissive error handling depending on whether you prioritize correctness or robustness.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 25
    ebfformat

    ebfformat

    An Efficient Binary data Format

    EBF, which stands for Efficient Binary Format, is a binary file format for reading and writing binary data easily. Reading writing routines are currently available in C,C++,Fortran,Java, Python, IDL, MATLAB. A program called ebftkpy which has a set of utility functions to work with the .ebf files , e.g., viewing the contents and getting a summary, is also provided. The EBF specification is designed to be concise and easy to understand to make it easier for others to write their own code if needed. It is also designed to simplify the programming of input output routines in different programming languages. In a nutshell an EBF file is a collection of data objects. Each data object is specified by a unique name and a single file can have multiple data objects. Each data object is preceded by a meta-data or header which describes the binary data associated with it. Among other things, this header allows the files to be portable across systems with different endianess.
    Downloads: 10 This Week
    Last Update:
    See Project