Skip to main content

An easy-to-use seeder manager to keep seed data in sync across multiple environments.

Project description

Django Synced Seeds

PyPI version Python Support Django Support License: MIT

An easy-to-use seeder manager to keep seed data in sync across multiple environments. Perfect for managing reference data, initial configurations, and test data across development, staging, and production environments.

Installation

pip install django-synced-seeders

Add to your Django settings:

# settings.py
INSTALLED_APPS = [
    # ... your apps
    'seeds',
]

Run migrations:

python manage.py migrate

Quick Start

  1. Create your first seeder:
# myapp/seeders.py
from seeds import seeder_registry, Seeder
from .models import Category

@seeder_registry.register()
class CategorySeeder(Seeder):
    seed_slug = "categories"
    exporting_querysets = (Category.objects.all(),)
  1. Export data:
python manage.py exportseed categories
  1. Sync to another environment:
python manage.py syncseeds

Tagging Seeders

Organize seeders with tags for targeted execution:

# myapp/seeders.py
from seeds import seeder_registry, Seeder
from .models import User, Product

@seeder_registry.register(tags="e2e")
class E2ETestSeeder(Seeder):
    seed_slug = "e2e_test_data"
    exporting_querysets = (User.objects.all(),)

@seeder_registry.register(tags=["development", "demo"])
class DemoSeeder(Seeder):
    seed_slug = "demo_data"
    exporting_querysets = (Product.objects.all(),)

Run seeders by tag:

# Sync only e2e tagged seeders
python manage.py syncseeds e2e

# Sync multiple tags (union of all matching seeders)
python manage.py syncseeds e2e development

# Sync all seeders (default behavior)
python manage.py syncseeds

Documentation

📚 Full Documentation: https://starscribers.github.io/django-synced-seeders/

Community & Support

💬 Discord Server: Join our community for discussions, support, and updates.

License

This project is licensed under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django_synced_seeders-0.3.0.tar.gz (14.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django_synced_seeders-0.3.0-py3-none-any.whl (13.9 kB view details)

Uploaded Python 3

File details

Details for the file django_synced_seeders-0.3.0.tar.gz.

File metadata

  • Download URL: django_synced_seeders-0.3.0.tar.gz
  • Upload date:
  • Size: 14.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.11 {"installer":{"name":"uv","version":"0.9.11"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for django_synced_seeders-0.3.0.tar.gz
Algorithm Hash digest
SHA256 705b7159b4cccc31ae131d722b66316e6d34d2451c67b92569599540bb5516ba
MD5 4a52c37544ae377e34808917ae012368
BLAKE2b-256 ab6b46221033a5ac14e5545b210e5756749489300edcabedf24cfdf8a81c3188

See more details on using hashes here.

File details

Details for the file django_synced_seeders-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: django_synced_seeders-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 13.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.11 {"installer":{"name":"uv","version":"0.9.11"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for django_synced_seeders-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8c9413ff418187ead912d2318ceb4403cb83525b05212ec1a7b7e69b9ff0266d
MD5 e785c80a8957d4f8ddcac3ffbb35191e
BLAKE2b-256 b36f330ccbba0fa2bb6afd5ccb7b9d77a3cb7e43e575917ad3d8e61046bf13ba

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page