awesome-repositories.com
Blog
MCP
awesome-repositories.com

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

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
carltongibson avatar

carltongibson/django-filter

0
View on GitHub↗
4,683 stars·775 forks·Python·17 viewsdjango-filter.readthedocs.io/en/main↗

Django Filter

django-filter is a library for filtering Django QuerySets by mapping URL parameters to database lookups using declarative syntax. It functions as a model filter generator and a database lookup tool that translates request parameters into queries to refine data results.

The project enables the automatic generation of search filters and user-facing forms based on model field definitions. It supports advanced retrieval logic through custom lookup methods, relationship paths, and full-text search integration, while providing a system for refining results within REST API endpoints.

Its capability surface includes the creation of interactive filter forms, the rendering of filtered list views, and the use of factory functions for dynamic filter set instantiation. The system also handles type-specific filtering for booleans, UUIDs, and ISO 8601 timestamps, as well as request-based filtering using authenticated user identity.

Features

  • Query Parameter Filters - Translates URL query parameters into valid database query clauses using a declarative mapping system.
  • Declarative Query Mappings - Translates URL parameters into database lookups using a class-based declarative syntax.
  • Database Lookup Extensions - Provides a mechanism for implementing complex database filtering via custom lookups and relationship paths.
  • Custom Database Lookups - Handles specialized lookups like relative time windows, magic values, or empty strings through custom methods.
  • Content API Query Filters - Provides a system for refining API results by translating request parameters into database queries.
  • Schema-Driven Filter Generation - Automatically creates filtering options by inspecting model field types and metadata at runtime.
  • Model-Based Filter Generators - Automatically creates search filters and user-facing forms based on Django model field definitions.
  • Custom Filter Callables - Executes custom methods to determine how a specific filter parameter modifies the resulting data set.
  • Complex Querying Techniques - Supports advanced data retrieval logic through custom lookup methods and relationship paths beyond simple matches.
  • Model-Based Filter Generation - Creates search filters automatically based on model field types while allowing specific field inclusions or exclusions.
  • Model-Driven Filter Generation - Automatically generates a suite of search filters by inspecting model field types and metadata.
  • Queryset Filtering Backends - Implements pluggable backends that constrain Django QuerySets based on parameters passed through the request URL.
  • Queryset Filtering Tools - Modifies database query objects incrementally by applying lookup filters based on validated user input.
  • Complex Query Filtering Logic - Uses custom callables or methods to filter data sets using complex lookups beyond simple field matches.
  • Custom Filtering Methods - Allows the definition of custom callable methods to handle complex filtering logic beyond standard database lookups.
  • API Query Filtering - Adds powerful search and filter capabilities to REST API endpoints for refined data retrieval.
  • Dynamic Filtering - Injects dynamic arguments or custom behavior into the filtering process by overriding filter set initialization.
  • Filter Form Customization - Allows customization of the filter interface and input validation by subclassing a dedicated form class.
  • Data - Provides specialized filters that validate and match URL parameters against specific data types like booleans, UUIDs, and timestamps.
  • Full Text Search - Integrates full-text search capabilities to scan multiple text fields for a specific term via a single filter input.
  • Metadata Filtering - Extracts attributes from model field definitions to automatically populate descriptive labels and help text for filters.
  • Null Value Filtering in Queries - Checks if a field is empty or null using boolean toggles or dedicated menu labels within database queries.
  • Result Sorting - Orders the resulting data set based on specified fields, including computed values or non-model properties.
  • Active Record Search Forms - Implements form-driven query building that allows users to interactively filter records via UI inputs.
  • Filter Selection Interfaces - Creates a user interface for selecting specific filter criteria to refine and narrow down list results.
  • Multi-Selection Filters - Restricts results to a predefined list of valid options supporting single or multiple selections and null matching.
  • Table View Filtering - Provides generic views that apply model filters and render the resulting data through a template.
  • Request Context Filtering - Enables filtering of results based on properties of the incoming request, including the authenticated user's identity.
  • Factory Functions - Provides factory functions to dynamically instantiate filter sets, decoupling the logic from static class declarations.
  • Request Context Injection - Integrates data from the current HTTP request object into filtering logic to restrict results by user identity.
  • Filter Input Generation - Generates appropriate UI elements, such as range inputs and toggles, to capture user filtering criteria.
  • Interactive Data Filter Forms - Automatically generates user-facing forms from model field definitions to enable interactive data filtering.
  • Dynamic Filter Generators - Django Filter creates a filter set for a model using a factory function instead of a class declaration.
  • Form Validation Engines - Uses a form layer to sanitize and validate URL parameters before passing them to the database engine.
  • General Utilities - Filters QuerySets based on user-provided criteria.

Star history

Star history chart for carltongibson/django-filterStar history chart for carltongibson/django-filter

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

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

Start searching with AI

Projects sharing features with Django Filter

These projects share indexed features with Django Filter. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • spatie/laravel-query-builderspatie avatar

    spatie/laravel-query-builder

    4,453View on GitHub↗

    This project is an Eloquent query builder wrapper and REST API query parser for Laravel applications. It translates HTTP request parameters into database queries to provide dynamic filtering, sorting, and relationship loading for API endpoints. The system decouples the external API interface from the storage layer through alias-based schema abstraction, allowing public field names to map to private database columns. It supports the dynamic inclusion of nested relationships and aggregate counts, as well as the execution of custom programmatic logic for filters and sorting via invokable classes

    PHPapihacktoberfestlaravel
    View on GitHub↗4,453
  • theorchid/platformTheOrchid avatar

    TheOrchid/Platform

    4,791View on GitHub↗

    Platform is a framework for building back-office applications and administrative dashboards using Laravel. It functions as a schema-driven UI framework and CRUD generator that automatically constructs database management interfaces, input forms, and validation rules from programmatic model definitions. The project distinguishes itself through a comprehensive backend UI kit that supports advanced data capture, including geographic coordinate mapping, tabular JSON data matrices, and marketing metadata tracking. It features a robust role-based access control system for managing resource visibili

    PHP
    View on GitHub↗4,791
  • jqhph/dcat-adminjqhph avatar

    jqhph/dcat-admin

    4,022View on GitHub↗

    dcat-admin is a Laravel admin panel framework used to rapidly build data-driven administration interfaces. It functions as a CRUD generator and backend scaffolding tool that automatically produces create, read, update, and delete interfaces based on database table schemas. The system distinguishes itself through a plugin-based extension architecture and the ability to run multiple independent administrative instances within a single installation. It provides specialized tools for mapping external APIs to forms and tables, as well as an event-driven form lifecycle for executing custom logic du

    PHPlaravellaravel-admin
    View on GitHub↗4,022
  • encode/django-rest-frameworkencode avatar

    encode/django-rest-framework

    30,083View on GitHub↗

    Django REST Framework is a toolkit for building standards-compliant web services that map complex data models to structured HTTP responses. It provides a modular architecture for handling the request lifecycle, including authentication, permission checks, and content negotiation. The framework is designed to facilitate the development of robust APIs by transforming complex data types into native formats and validating incoming request payloads against defined schemas. The project distinguishes itself through a highly modular, class-based design that allows developers to build complex views an

    Pythonapidjangopython
    View on GitHub↗30,083
Compare all 30 related projects→

Frequently asked questions

What does carltongibson/django-filter do?

django-filter is a library for filtering Django QuerySets by mapping URL parameters to database lookups using declarative syntax. It functions as a model filter generator and a database lookup tool that translates request parameters into queries to refine data results.

What are the main features of carltongibson/django-filter?

The main features of carltongibson/django-filter are: Query Parameter Filters, Declarative Query Mappings, Database Lookup Extensions, Custom Database Lookups, Content API Query Filters, Schema-Driven Filter Generation, Model-Based Filter Generators, Custom Filter Callables.

Which projects share features with carltongibson/django-filter?

Projects with overlapping indexed features include: spatie/laravel-query-builder — This project is an Eloquent query builder wrapper and REST API query parser for Laravel applications. It translates… theorchid/platform — Platform is a framework for building back-office applications and administrative dashboards using Laravel. It… jqhph/dcat-admin — dcat-admin is a Laravel admin panel framework used to rapidly build data-driven administration interfaces. It… encode/django-rest-framework — Django REST Framework is a toolkit for building standards-compliant web services that map complex data models to… prest/prest — PostgREST is a tool that automatically transforms a PostgreSQL database schema into a production-ready RESTful API. It… jmoiron/sqlx — sqlx is a set of extensions for the Go database/sql package that reduces boilerplate code by automating the mapping of…