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

  • Ship Agents Faster Icon
    Ship Agents Faster

    Transform your applications and workflows into powerful agentic systems at global scale.

    Gemini Enterprise Agent Platform lets you rapidly build, scale, govern and optimize production-ready agents grounded in your organization's data. The platform enables developers to build custom or pre-built agents for virtually any use case. New customers get $300 in free credits.
    Start Free
  • 99.99% Uptime for MySQL and PostgreSQL Databases Icon
    99.99% Uptime for MySQL and PostgreSQL Databases

    Sub-second maintenance. 2x read/write performance. Built-in vector search for AI apps.

    Cloud SQL Enterprise Plus delivers near-zero downtime with 35 days of point-in-time recovery. Supports MySQL, PostgreSQL, and SQL Server.
    Start Free
  • 1
    OpenWPM

    OpenWPM

    A web privacy measurement framework

    OpenWPM is a web privacy measurement framework that makes it easy to collect data for privacy studies on a scale of thousands to millions of websites. OpenWPM is built on top of Firefox, with automation provided by Selenium. It includes several hooks for data collection. Check out the instrumentation section below for more details. OpenWPM is tested on Ubuntu 18.04 via TravisCI and is commonly used via the docker container that this repo builds, which is also based on Ubuntu. Although we don't officially support other platforms, conda is a cross-platform utility and the install script can be expected to work on OSX and other Linux distributions. OpenWPM does not support windows. The main pre-requisite for OpenWPM is conda, a cross-platform package management tool.
    Downloads: 12 This Week
    Last Update:
    See Project
  • 2
    Python Outlier Detection

    Python Outlier Detection

    A Python toolbox for scalable outlier detection

    PyOD is a comprehensive and scalable Python toolkit for detecting outlying objects in multivariate data. This exciting yet challenging field is commonly referred as outlier detection or anomaly detection. PyOD includes more than 30 detection algorithms, from classical LOF (SIGMOD 2000) to the latest COPOD (ICDM 2020) and SUOD (MLSys 2021). Since 2017, PyOD [AZNL19] has been successfully used in numerous academic researches and commercial products [AZHC+21, AZNHL19]. PyOD has multiple neural network-based models, e.g., AutoEncoders, which are implemented in both PyTorch and Tensorflow. PyOD contains multiple models that also exist in scikit-learn. It is possible to train and predict with a large number of detection models in PyOD by leveraging SUOD framework. A benchmark is supplied for select algorithms to provide an overview of the implemented models. In total, 17 benchmark datasets are used for comparison, which can be downloaded at ODDS.
    Downloads: 12 This Week
    Last Update:
    See Project
  • 3
    SageMaker Spark Container

    SageMaker Spark Container

    Docker image used to run data processing workloads

    Apache Spark™ is a unified analytics engine for large-scale data processing. It provides high-level APIs in Scala, Java, Python, and R, and an optimized engine that supports general computation graphs for data analysis. It also supports a rich set of higher-level tools including Spark SQL for SQL and DataFrames, MLlib for machine learning, GraphX for graph processing, and Structured Streaming for stream processing. The SageMaker Spark Container is a Docker image used to run batch data processing workloads on Amazon SageMaker using the Apache Spark framework. The container images in this repository are used to build the pre-built container images that are used when running Spark jobs on Amazon SageMaker using the SageMaker Python SDK. The pre-built images are available in the Amazon Elastic Container Registry (Amazon ECR), and this repository serves as a reference for those wishing to build their own customized Spark containers for use in Amazon SageMaker.
    Downloads: 12 This Week
    Last Update:
    See Project
  • 4
    pep484 stubs for Django

    pep484 stubs for Django

    PEP-484 stubs for Django

    This package contains type stubs and a custom mypy plugin to provide more precise static types and type inference for Django framework. Django uses some Python "magic" that makes having precise types for some code patterns problematic. This is why we need this project. The final goal is to be able to get precise types for the most common patterns. We are independent from Django at the moment. There's a proposal to merge our project into the Django itself. You can show your support by liking the PR. This project does not affect your runtime at all. It only affects mypy type checking process. The current implementation uses Django's runtime to extract information about models, so it might crash if your installed apps or models.py are broken.
    Downloads: 12 This Week
    Last Update:
    See Project
  • Save Up to 91% on Cloud Compute With Spot VMs Icon
    Save Up to 91% on Cloud Compute With Spot VMs

    Automatic sustained-use discounts. One free VM per month. No negotiation needed.

    Run batch jobs at 60-91% off with Spot VMs. Long-running workloads get automatic discounts with sustained use.
    Start Free
  • 5
    pre-commit

    pre-commit

    Framework for managing and maintaining multi-language pre-commit hooks

    Git hook scripts are useful for identifying simple issues before submission to code review. We run our hooks on every commit to automatically point out issues in code such as missing semicolons, trailing whitespace, and debug statements. By pointing these issues out before code review, this allows a code reviewer to focus on the architecture of a change while not wasting time with trivial style nitpicks. As we created more libraries and projects we recognized that sharing our pre-commit hooks across projects is painful. We copied and pasted unwieldy bash scripts from project to project and had to manually change the hooks to work for different project structures. We believe that you should always use the best industry standard linters. Some of the best linters are written in languages that you do not use in your project or have installed on your machine.
    Downloads: 12 This Week
    Last Update:
    See Project
  • 6
    Django Lifecycle Hooks

    Django Lifecycle Hooks

    Declarative model lifecycle hooks, an alternative to Signals

    This project provides a @hook decorator as well as a base model and mixin to add lifecycle hooks to your Django models. Django's built-in approach to offering lifecycle hooks is Signals. However, my team often finds that Signals introduce unnecessary indirection and are at odds with Django's "fat models" approach. Django Lifecycle Hooks supports Python 3.7, 3.8 and 3.9, Django 2.0.x, 2.1.x, 2.2.x, 3.0.x, 3.1.x, and 3.2.x. For simple cases, you might always want something to happen at a certain point, such as after saving or before deleting a model instance. When a user is first created, you could process a thumbnail image in the background and send the user an email.
    Downloads: 11 This Week
    Last Update:
    See Project
  • 7
    Evilginx v.1.1.0

    Evilginx v.1.1.0

    Man-in-the-middle attack framework used for phishing credentials

    Evilginx v.1.1.0 is the original version of a man-in-the-middle phishing research framework created to demonstrate risks in web authentication systems. It used a customized Nginx configuration to proxy traffic between a browser and a legitimate web service. The framework was designed to study how credentials and authenticated session cookies could be intercepted during authorized security assessments. Site-specific templates defined how supported services were proxied and modified. A Python management script handled configuration, log processing, and supporting workflow tasks. The repository is obsolete and has been superseded by Evilginx2, which replaced its Nginx-based architecture with a standalone Go implementation. Because its capabilities can facilitate credential theft, legitimate use is limited to defensive research and explicitly authorized testing.
    Downloads: 11 This Week
    Last Update:
    See Project
  • 8
    FlaskBB

    FlaskBB

    A classic Forum Software in Python using Flask

    A classic Forum Software in Python with a Modern and Fresh look. FlaskBB is open source and the whole source code is available on GitHub. It is being developed under the BSD 3-Clause license. Due to the plugin system, it is possible to extend FlaskBB without touching a single line of code. You just drop the plugin into the plugin's directory and activate it in the management panel. Are you sick of the standard theme or you simply want to create a customized style for your site? No problem! You can customize every template in FlaskBB. Besides that, you can also install community-made themes. Our goal is to develop a forum system with modern technologies and sticking to already well-tested and approved layouts. FlaskBB is a simple and extensible forum software that should be seen as the foundation for building communities. It is written in Python using the web framework Flask. FlaskBB is being distributed under the BSD 3-Clause License.
    Downloads: 11 This Week
    Last Update:
    See Project
  • 9
    GHunt

    GHunt

    Offensive Google framework

    GHunt (v2) is an offensive Google framework, designed to evolve efficiently. It's currently focused on OSINT, but any use related with Google is possible. It will automatically use venvs to avoid dependency conflicts with other projects. First, launch the listener by doing ghunt login and choose between 1 of the 2 first methods. Put GHunt on listening mode (currently not compatible with docker) Paste base64-encoded cookies. Enter manually all cookies. The development of this extension has followed Firefox guidelines to use the Promise-based WebExtension/BrowserExt API being standardized by the W3 Browser Extensions group, and is using webextension-polyfill to provide cross-browser compatibility with no changes.
    Downloads: 11 This Week
    Last Update:
    See Project
  • Veeam Data Platform v13.1 - Get Your Free Trial Icon
    Veeam Data Platform v13.1 - Get Your Free Trial

    Secure by design, portable by default. Recover clean, fast, anywhere. Start a free trial.

    Try Veeam Data Platform today. Experience the unified platform that's secure by design, portable by default, and proven to recover clean, fast, and anywhere.
    Try it Free
  • 10
    SQL Explorer

    SQL Explorer

    Easily share data across your company via SQL queries

    SQL Explorer aims to make the flow of data between people fast, simple, and confusion-free. It is a Django-based application that you can add to an existing Django site, or use as a standalone business intelligence tool. Quickly write and share SQL queries in a simple, usable SQL editor, preview the results in the browser, share links, download CSV, JSON, or Excel files (and even expose queries as API endpoints, if desired), and keep the information flowing! Comes with support for multiple connections, to many different SQL database types, a schema explorer, query history (e.g. lightweight version control), a basic security model, in-browser pivot tables, and more. SQL Explorer values simplicity, intuitive use, unobtrusiveness, stability, and the principle of least surprise. SQL Explorer is inspired by any number of great query and reporting tools out there.
    Downloads: 11 This Week
    Last Update:
    See Project
  • 11
    Anymail

    Anymail

    Django email backends and webhooks for Amazon SES, Mailgun, Mailjet

    Anymail lets you send and receive email in Django using your choice of transactional email service providers (ESPs). It extends the standard django.core.mail with many common ESP-added features, providing a consistent API that avoids locking your code to one specific ESP (and making it easier to change ESPs later if needed). Integration of each ESP’s sending APIs into Django’s built-in email package, including support for HTML, attachments, extra headers, and other standard email features. Extensions to expose common ESP-added functionality, like tags, metadata, and tracking, with code that’s portable between ESPs. Inbound message support, to receive email through your ESP’s webhooks, with simplified, portable access to attachments and other inbound content. Anymail maintains compatibility with all Django versions that are in mainstream or extended support, plus (usually) a few older Django versions, and is extensively tested on all Python versions supported by Django.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 12
    Authlib

    Authlib

    The ultimate Python library in building OAuth, OpenID Connect

    The ultimate Python library in building OAuth and OpenID Connect servers. Various built-in high-level framework integrations for both clients and servers, aiming to create a seamless experience. Authlib offers generic implementations of RFCs. Supporting a wide range of social network service connections, powered by Loginpass. Authlib is built from low level of specifications to high level of framework integrations. Security matters in Authlib. We have a section on security process at the very first begin. Authlib is created with sustainable maintainence in mind. Consider to buy a commercial plan.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 13
    Brownie

    Brownie

    A Python-based development and testing framework for smart contracts

    Brownie is a Python-based development and testing framework for smart contracts targeting the Ethereum Virtual Machine. Powerful debugging tools, including python-style tracebacks and custom error strings. The recommended way to install Brownie is via pipx. pipx installs Brownie into a virtual environment and makes it available directly from the command-line. Once installed, you will never have to activate a virtual environment prior to using Brownie. Brownie documentation is hosted at Read the Docs. Use tox to run the complete suite against the full set of build targets, or pytest to run tests against a specific version of Python. If you are using pytest you must include the -p no:pytest-brownie flag to prevent it from loading the Brownie plugin.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 14
    Django Filer

    Django Filer

    File and Image Management Application for django

    django Filer is a file management application for django that makes handling files and images a breeze. django-filer is a file management application for django. It handles uploading and organizing files and images in contrib.admin. Custom model fields are provided for use in 3rd party apps as a replacement for the default FileField from django. Behind the scenes a ForeignKey to the File model is used. It is possible to define the important part of an image (the subject location) in the admin interface for django-filer images. This is very useful when later resizing and cropping images with easy_thumbnails. The image can then be cropped automatically in a way, that the important part of the image is always visible. You can configure your project to generate canonical URLs for your public files.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 15
    Django Two-Factor Authentication

    Django Two-Factor Authentication

    Complete Two-Factor Authentication for Django

    Complete Two-Factor Authentication for Django. Built on top of the one-time password framework django-otp and Django's built-in authentication framework django.contrib.auth for providing the easiest integration into most Django projects. Inspired by the user experience of Google's Two-Step Authentication, allowing users to authenticate through call, text messages (SMS), by using a token generator app like Google Authenticator or a YubiKey hardware token generator (optional). If you run into problems, please file an issue on GitHub, or contribute to the project by forking the repository and sending some pull requests. The package is translated into English, Dutch and other languages. Please contribute your own language using Transifex. Test drive this app through the example app. It demos most features except the Twilio integration. The example also includes django-user-sessions for providing Django sessions with a foreign key to the user.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 16
    Flask-JWT-Extended

    Flask-JWT-Extended

    An open source Flask extension that provides JWT support

    Flask-JWT-Extended not only adds support for using JSON Web Tokens (JWT) to Flask for protecting routes, but also many helpful (and optional) features built in to make working with JSON Web Tokens easier. Adding custom claims to JSON Web Tokens. Automatic user loading (current_user). Custom claims validation on received tokens. Refresh tokens, first-class support for fresh tokens for making sensitive changes. Token revoking/blocklisting. Storing tokens in cookies and CSRF protection. Adding custom claims to JSON Web Tokens. Automatic user loading (current_user). Custom claims validation on received tokens. Refresh tokens. First-class support for fresh tokens for making sensitive changes. Token revoking/blocklisting. Storing tokens in cookies and CSRF protection.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 17
    Kubernetes Operator Pythonic Framework

    Kubernetes Operator Pythonic Framework

    A Python framework to write Kubernetes operators in just a few lines

    Kopf —Kubernetes Operator Pythonic Framework— is a framework and a library to make Kubernetes operator's development easier, just in a few lines of Python code. The main goal is to bring the Domain-Driven Design to the infrastructure level, with Kubernetes being an orchestrator/database of the domain objects (custom resources), and the operators containing the domain logic (with no or minimal infrastructure logic). The project was originally started as zalando-incubator/kopf in March 2019, and then forked as nolar/kopf in August 2020: but it is the same codebase, the same packages, the same developer(s). A full-featured operator in just 2 files: a Dockerfile + a Python file (*). Handling functions registered via decorators with a declarative approach. No infrastructure boilerplate code with K8s API communication. Both sync and async handlers, with sync ones being threaded under the hood. Detailed documentation with examples.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 18
    LocalStack

    LocalStack

    Develop and test your cloud apps offline

    LocalStack is a fully functional local AWS cloud stack that enables you to develop and test your cloud and serverless apps offline. It spins up an easy-to-use testing environment on your local machine that has the same APIs and works the same way as the real AWS cloud environment. It can spin up a number of different core Cloud APIs on your local machine, including API Gateway, Kinesis, DynamoDB, Firehose, Lambda and many others. LocalStack was built on some of today’s best-of-breed mocking/testing tools, combining them and making them interoperable, and adding important functionality such as error injection and pluggable services. All this happening locally, without ever talking to the cloud.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 19
    Status - a Mobile Ethereum OS

    Status - a Mobile Ethereum OS

    A free (libre) open source, mobile OS for Ethereum

    Status is a secure messaging app, crypto wallet, and Web3 browser built with state-of-the-art technology. Integrated into one powerful super app for private secure communication. Safely send, store and receive cryptocurrencies including ERC20 and ERC721 tokens with the Status crypto wallet. Only you hold the keys to your funds. Status' intuitive design protects you and your funds from attacks. Status uses an open-source, peer-to-peer protocol, and end-to-end encryption to protect your messages from third parties. Keep your private messages private with Status. Browse the growing ecosystem of DApps including marketplaces, exchanges, games, and social networks. The latest security standards ensure a private browsing experience. You will never be asked for a phone number, email address, or bank account when generating a Status account. Stay private and selectively reveal yourself to the world with Status.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 20
    ThetaGang

    ThetaGang

    ThetaGang is an IBKR bot for collecting money

    ThetaGang is an IBKR trading bot for collecting premiums by selling options using "The Wheel" strategy. The Wheel is a strategy that surfaced on Reddit but has been used by many in the past. This bot implements a slightly modified version of The Wheel, with my own personal tweaks. The strategy, as implemented here, does a few things differently from the one described in the post above. For one, it's intended to be used to augment a typical index-fund-based portfolio with specific asset allocations. For example, you might want to use a 60/40 portfolio with SPY (S&P500 fund) and TLT (20-year treasury fund). This strategy reduces risk, but may also limit gains from big market swings. By reducing risk, one can increase leverage. ThetaGang will try to acquire your desired allocation of each stock or ETF according to the weights you specify in the config. To acquire the positions, the script will write puts when conditions are met.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 21
    django-webpack-loader

    django-webpack-loader

    Transparently use webpack with django

    Use webpack to generate your static bundles without django's static files or opaque wrappers. Django webpack loader consumes the output generated by webpack-bundle-tracker and lets you use the generated bundles in Django. Test cases cover Django>=2.0 on Python>=3.5. 100% code coverage is the target so we can be sure everything works anytime. It should probably work on older versions of Django as well but the package does not ship any test cases for them. Before configuring django-webpack-loader, let's first configure what's necessary on the webpack-bundle-tracker side. Update your Webpack configuration file (it's usually on webpack.config.js in the project root). Make sure your file looks like this (adapt to your needs). The generated compiled files will be placed inside the /assets/webpack_bundles/ directory and the file with the information regarding the bundles and assets (webpack-stats.json) will be stored in the project root.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 22
    Manim

    Manim

    A community-maintained Python framework for creating animations

    A community-maintained Python library for creating mathematical animations. Manim is a free and open-source project originally written by Grant Sanderson. It is now maintained by the Manim Community and permissively released under the MIT license. Manim was originally created by Grant Sanderson as a personal project and for use in his YouTube channel, 3Blue1Brown. As his channel gained popularity, many grew to like the style of his animations and wanted to use manim for their own projects. However, as manim was only intended for personal use, it was very difficult for other users to install and use it. Manim, or ManimCE refers to the community-maintained version of the library. This is the version documented on this website; the package name on PyPI is manim. ManimGL is the latest released version of the library developed by Grant “3b1b” Sanderson. It has more experimental features and breaking changes between versions are not documented.
    Downloads: 8 This Week
    Last Update:
    See Project
  • 23
    Starlette

    Starlette

    The little ASGI framework that shines

    Starlette is a lightweight ASGI framework/toolkit, which is ideal for building async web services in Python. It is production-ready and gives you a lightweight, low-complexity HTTP web framework. WebSocket support. In-process background tasks. Startup and shutdown events. Test client built on httpx. CORS, GZip, Static Files, streaming responses. Session and Cookie support. 100% test coverage. 100% type annotated codebase. Few hard dependencies. Compatible with asyncio and trio backends.
    Downloads: 8 This Week
    Last Update:
    See Project
  • 24
    Mr.Holmes

    Mr.Holmes

    A Complete Osint Tool

    Mr.Holmes is a project focused on information gathering by public sources about social networks,phone-numbers, domains and ip and with the help of Google-Dorks it generated some useful links for information gathering. It can geolocate any ip or domain and geolocate approximately every location of almost all the companies. Including Who-is Lookup, Phone-Carriers and Proxied Requests.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 25
    Offensive Web Testing Framework

    Offensive Web Testing Framework

    Offensive Web Testing Framework (OWTF), is a framework

    OWASP OWTF is a project focused on penetration testing efficiency and alignment of security tests to security standards like the OWASP Testing Guide (v3 and v4), the OWASP Top 10, PTES and NIST so that pentesters will have more time to see the big picture and think out of the box. More efficiently find, verify and combine vulnerabilities. Have time to investigate complex vulnerabilities like business logic/architectural flaws or virtual hosting sessions. Perform more tactical/targeted fuzzing on seemingly risky areas. Demonstrate true impact despite the short timeframes we are typically given to test. The tool is highly configurable and anybody can trivially create simple plugins or add new tests in the configuration files without having any development experience. OWTF is developed on KaliLinux and macOS but it is made for Kali Linux (or other Debian derivatives).
    Downloads: 7 This Week
    Last Update:
    See Project