Skip to main content

Django App Toolkit for selling digital and physical goods online.

Project description

Python Tests

Build, Bump, and Release

Django Vendor

Django App Toolkit for selling digital and physical goods online.

The philosophy is "Cart to Receipt". What you put in the cart and what you do after the purchase is up to you. The app is opinionated within scope.

Goals of the project:

  • Drop in to existing Django Sites without requiring changes to how Django works (flow, not fight)
  • Handle everything from the point of starting a purchase, until payment is complete.
  • BYOPM, Bring Your Own Product Model. Subclass your Product Model off of our base model and add whatever you want. You are responsible for things like Catalogs and Presenting products to the user, we handle the purchasing of the products and generate a receipt you can look for.

Docs

The docs can be found here: Documentation

For Developers

NOTE: It is reconmended that you first setup a virtual environment.

To install the project, all you need to do is check out the project and run the following to install all the dependencies:

pip install -e .

For developers, you'll need to also include a couple of dependencies that are only used in develop mode. Run this from the root level of the project.

pip install -e .'[dev]'

If you are working with Authirize.net you will need to run this:

pip install -e .'[authorizenet]'

If you are working with Stripe you will need to install this.

pip install -e .'[stripe]'

To run the project, go into the 'develop' folder:

To setup the models:

./manage.py migrate

Create the Super user

./manage.py createsuperuser

Then load the developer fixture if you want to pre-populate the cart & catalog

./manage.py loaddata developer

To run the project:

./manage.py runserver

to dump unit test data

./manage.py dumpdata --indent 4 auth.group --natural-foreign --natural-primary > fixtures/group.json
./manage.py dumpdata --indent 4 auth.user --natural-foreign > fixtures/user.json
./manage.py dumpdata --indent 4 -e contenttypes -e auth.permission -e sessions -e admin.logentry -e account.emailaddress -e auth.group -e auth.user > fixtures/unit_test.json

The install process

  1. Add the app to your project
  2. Create your Product model that inherits from the ProductModelBase base class.
  3. Change the settings.py value for VENDOR_PRODUCT_MODEL to point to your model
  4. Make migrations
  5. Migrate

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

django_vendor-0.8.1.tar.gz (125.7 kB view details)

Uploaded Source

Built Distribution

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

django_vendor-0.8.1-py3-none-any.whl (168.0 kB view details)

Uploaded Python 3

File details

Details for the file django_vendor-0.8.1.tar.gz.

File metadata

  • Download URL: django_vendor-0.8.1.tar.gz
  • Upload date:
  • Size: 125.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for django_vendor-0.8.1.tar.gz
Algorithm Hash digest
SHA256 271ced4ed9d5430e7a2bedf2dce5e3b056caed345bc902c80b9f7ecbb007a0a9
MD5 24add47907efa79bdb49f8a3763bd4f0
BLAKE2b-256 3e80baf9e5f40b1262b0501bf6632fbd9275bfc3187ef421ed6723dec08e3ffd

See more details on using hashes here.

Provenance

The following attestation bundles were made for django_vendor-0.8.1.tar.gz:

Publisher: python-publish.yml on renderbox/django-vendor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file django_vendor-0.8.1-py3-none-any.whl.

File metadata

  • Download URL: django_vendor-0.8.1-py3-none-any.whl
  • Upload date:
  • Size: 168.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for django_vendor-0.8.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5e67a282a0f134557afe47f98e03ef7630656ed5d5aab410873aead1c1c5cf0f
MD5 074df6acfcd88b5959b60b02f97dde06
BLAKE2b-256 89027e87fd23007a5ce17db486cc7c10edba77d97d78ba8a42a4bd16e18dde61

See more details on using hashes here.

Provenance

The following attestation bundles were made for django_vendor-0.8.1-py3-none-any.whl:

Publisher: python-publish.yml on renderbox/django-vendor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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