skillfed

Collectfasta

A Faster Collectstatic

collectfasta v3.3.3 1.0M downloads/30d#4,471 on PyPI76
Permissive license MIT License AGING released

What it is and what it does

Collectfasta is a drop-in replacement for Django's built-in collectstatic command that accelerates the process of uploading static files to cloud storage. It works by caching file checksums to detect which files have actually changed, avoiding unnecessary re-uploads, and by supporting parallel uploads via Python's concurrent.futures module. The package is a maintained fork of the archived collectfast project and integrates with django-storages to support multiple backends: S3 (Boto3), Google Cloud Storage, Azure Blob Storage, and local filesystem.

The package includes strategy-specific optimizations—notably a two-pass upload mode for S3 Manifest storage that hashes and post-processes files in memory or on the local filesystem before copying the results, which can significantly reduce upload time for large static file collections. Configuration is straightforward: add collectfasta to INSTALLED_APPS before django.contrib.staticfiles, specify a storage backend, and optionally enable parallel uploads by setting COLLECTFASTA_THREADS and configuring a dedicated cache backend.

Use it for:

  • Reduce deployment time for Django projects with large static file collections (jQuery UI, Bootstrap, etc.) by skipping unchanged files.
  • Enable parallel uploads to S3 or Google Cloud Storage to maximize network throughput during collectstatic runs.
  • Optimize manifest-based static file storage on S3 using two-pass hashing to avoid single-pass bottlenecks.
  • Cache static file checksums across deployments to avoid redundant storage backend lookups.
  • Speed up CI/CD pipelines that run collectstatic as part of build or deployment steps.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Collectfasta speeds up Django's collectstatic command by using cached checksums to avoid re-uploading unchanged files and enabling parallel uploads to cloud storage backends.

Yes, if you deploy Django projects with large static file collections to cloud storage and want to reduce collectstatic runtime. The low install friction, permissive license, and active (though aging) maintenance make it a practical choice. However, verify that the 232-day gap since the last release does not introduce compatibility issues with your specific Django and Python versions, and confirm that the performance gains justify the additional dependency in your deployment workflow.

Install

collectfasta on PyPI

pip

pip install collectfasta

uv

uv add collectfasta

poetry

poetry add collectfasta

Installing Collectfasta

Before you install

Low install friction with a pure-Python wheel and only three runtime dependencies (Django, django-storages, typing-extensions). Maintenance status is aging—last release was 232 days ago—but the repository is active and not archived, with recent commits and modest community engagement (76 stars).

License in practice

Licensed under the MIT License (permissive), so you can use, modify, and distribute it freely with minimal restrictions.

Quickstart

pip install Collectfasta

# In Django settings.py:
INSTALLED_APPS = (
    'collectfasta',  # Must come before django.contrib.staticfiles
    'django.contrib.staticfiles',
)

STORAGES = {
    'staticfiles': {
        'BACKEND': 'storages.backends.s3boto3.S3Boto3Storage',
    },
}

COLLECTFASTA_STRATEGY = 'collectfasta.strategies.boto3.Boto3Strategy'

# Then run:
python manage.py collectstatic

Requires Django 4.2, 5.2, or 6.0 and Python 3.10 or later. Must configure a supported storage backend (S3, Google Cloud, Azure, or filesystem) before running collectstatic.

Verify before relying

  • Whether the aging maintenance status (232 days since last release) affects compatibility with the latest Django/Python versions despite classifier claims.
  • Performance gains and throughput improvements compared to standard collectstatic under typical project sizes.
  • Thread-safety guarantees for the parallel upload feature with different cache backends.

Package facts

License MIT License (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 3 — Django, django-storages, typing-extensions
Maintenance aging — 232 days since the last release
Last repo commit
First released
Downloads 1,030,754/month — #4,471 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: collectfasta-3.3.3-py2.py3-none-any.whl

Environment :: Web EnvironmentFramework :: DjangoFramework :: Django :: 4.2Framework :: Django :: 5.2Framework :: Django :: 6.0Intended Audience :: DevelopersOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14

Tags

django collectstatic optimizationfaster static file uploadsdjango s3 storage performanceparallel file upload djangodjango static files cachingcollectstatic speedupdjango cloud storage optimization
django-deploymentstatic-filescloud-storage

More Dynamic Content packages